OVH Cloud OVH Cloud

Update champ date avec SQL

16 réponses
Avatar
Lui
Bonjour...
Je veux mettre à jour un champ date avec une requête SQL ( format date
réduit) ma syntaxe est la suivante , ou N_Commande est numauto en entier
long

update TABLE set CHAMP = '01/12/05' where N_commande = 10248 ;

J'ai en retour le message :

Type inadéquat pour le champ 'valeur' attendu : mémo actuel string

Pouvez vous m'aider ?


Cordialement,

10 réponses

1 2
Avatar
david
salut,

Attention : en SQL 01/12/05 se lit 12 janvier 2005 et non pas 1°
décembre 2005 (en admétant que ton window soit à jour pour la
correction an 2000) ...

fait plutôt cela :
update TABLE
set CHAMP = DateSerial(2005, 12, 01)
where N_commande = 10248 ;

au moins, tu es certain d'obtenir la date que tu souhaites (pas de
confusion entre les format anglais et français).
A+
Avatar
Lui
j'essaie..merci



"david" a écrit dans le message de
news:
salut,

Attention : en SQL 01/12/05 se lit 12 janvier 2005 et non pas 1°
décembre 2005 (en admétant que ton window soit à jour pour la
correction an 2000) ...

fait plutôt cela :
update TABLE
set CHAMP = DateSerial(2005, 12, 01)
where N_commande = 10248 ;

au moins, tu es certain d'obtenir la date que tu souhaites (pas de
confusion entre les format anglais et français).
A+
Avatar
Lui
Non, toujours la même réponse....

Merci tt de même..je pense que c 'est un autre prb de sy,ntaxe que le format
date...


"david" a écrit dans le message de
news:
salut,

Attention : en SQL 01/12/05 se lit 12 janvier 2005 et non pas 1°
décembre 2005 (en admétant que ton window soit à jour pour la
correction an 2000) ...

fait plutôt cela :
update TABLE
set CHAMP = DateSerial(2005, 12, 01)
where N_commande = 10248 ;

au moins, tu es certain d'obtenir la date que tu souhaites (pas de
confusion entre les format anglais et français).
A+
Avatar
3stone
Salut Lui (drôle de nom ;-)

"Lui"
| Je veux mettre à jour un champ date avec une requête SQL ( format date
| réduit) ma syntaxe est la suivante , ou N_Commande est numauto en entier
| long
|
| update TABLE set CHAMP = '01/12/05' where N_commande = 10248 ;
|
| J'ai en retour le message :
|
| Type inadéquat pour le champ 'valeur' attendu : mémo actuel string


Ta requete SQL est un string dans le code ?
ou tu utilise une requête enregistrée ?


"Update Table Set Champ = #12-01-2005# Where N_commande = 10248"



PS: le format "date réduit" est uniquement un format d'affichage et non de sauvegarde !


--
A+
Pierre (3stone) Access MVP
Perso: http://www.3stone.be/
Conseils MPFA: http://www.mpfa.info/
Avatar
Lui
C'est une requête externe, avec une éditeur de requête, donc pas une requête
enregistrée


merci de prendre la peine de te pencher sur mes incapacités

"3stone" a écrit dans le message de
news:
Salut Lui (drôle de nom ;-)

"Lui"
| Je veux mettre à jour un champ date avec une requête SQL ( format date
| réduit) ma syntaxe est la suivante , ou N_Commande est numauto en entier
| long
|
| update TABLE set CHAMP = '01/12/05' where N_commande = 10248 ;
|
| J'ai en retour le message :
|
| Type inadéquat pour le champ 'valeur' attendu : mémo actuel string


Ta requete SQL est un string dans le code ?
ou tu utilise une requête enregistrée ?


"Update Table Set Champ = #12-01-2005# Where N_commande = 10248"



PS: le format "date réduit" est uniquement un format d'affichage et non de
sauvegarde !



--
A+
Pierre (3stone) Access MVP
Perso: http://www.3stone.be/
Conseils MPFA: http://www.mpfa.info/



Avatar
3stone
re,

"Lui"
| C'est une requête externe, avec une éditeur de requête, donc pas une requête
| enregistrée


"un éditeur de requête" ? pas celui d'Access ?




Tu as essayé ceci :

| > "Update Table Set Champ = #12-01-2005# Where N_commande = 10248"
| >



--
A+
Pierre (3stone) Access MVP
Perso: http://www.3stone.be/
Conseils MPFA: http://www.mpfa.info/
Avatar
Lui
Non non, en fait, je mets a jour une base access pour besoins statistiques a
partir d uns base informix, le même requeteur me sert a extraire et a
injecter les données



"3stone" a écrit dans le message de
news:
re,

"Lui"
| C'est une requête externe, avec une éditeur de requête, donc pas une
requête

| enregistrée


"un éditeur de requête" ? pas celui d'Access ?




Tu as essayé ceci :

| > "Update Table Set Champ = #12-01-2005# Where N_commande = 10248"
| >



--
A+
Pierre (3stone) Access MVP
Perso: http://www.3stone.be/
Conseils MPFA: http://www.mpfa.info/



Avatar
Lui
Oui, j'ai essayé les #, les crochets, j'ai même repris le SQL de la requête
ACESS, rien n y fait, tjrs le même pb.

ET je ne trouve nulle part la syntaxe pour cette p... de requête update
"3stone" a écrit dans le message de
news:
re,

"Lui"
| C'est une requête externe, avec une éditeur de requête, donc pas une
requête

| enregistrée


"un éditeur de requête" ? pas celui d'Access ?




Tu as essayé ceci :

| > "Update Table Set Champ = #12-01-2005# Where N_commande = 10248"
| >



--
A+
Pierre (3stone) Access MVP
Perso: http://www.3stone.be/
Conseils MPFA: http://www.mpfa.info/



Avatar
3stone
re,

"Lui"
| Oui, j'ai essayé les #, les crochets, j'ai même repris le SQL de la requête
| ACESS, rien n y fait, tjrs le même pb.
|
| ET je ne trouve nulle part la syntaxe pour cette p... de requête update


Il faut chercher le problème dans ton requêteur...


Le champ "date" est bien au format date ?
N_Commande est bien un champ numérique ?


alors avec ceci dela *doit* fonctionner
Update Table Set Champ = #12/01/2005# Where N_commande = 10248

Dans Access, le principe est que les valeurs de date que tu manipule
doivent être présentée au format US

Mais, comme tu dis "à partir d'une base informix"... (que je ne connais pas)
ce n'est donc pas réellement un problème Access ;-)
Comment t'adresse-tu à la base Access ? directement ? odbc ?


--
A+
Pierre (3stone) Access MVP
Perso: http://www.3stone.be/
Conseils MPFA: http://www.mpfa.info/
Avatar
Lui
Idem avec cette dernière syntaxe, je vais devoir contourner différemment...

"3stone" a écrit dans le message de
news:
re,

"Lui"
| Oui, j'ai essayé les #, les crochets, j'ai même repris le SQL de la
requête

| ACESS, rien n y fait, tjrs le même pb.
|
| ET je ne trouve nulle part la syntaxe pour cette p... de requête update


Il faut chercher le problème dans ton requêteur...


Le champ "date" est bien au format date ?
N_Commande est bien un champ numérique ?


alors avec ceci dela *doit* fonctionner
Update Table Set Champ = #12/01/2005# Where N_commande = 10248

Dans Access, le principe est que les valeurs de date que tu manipule
doivent être présentée au format US

Mais, comme tu dis "à partir d'une base informix"... (que je ne connais
pas)

ce n'est donc pas réellement un problème Access ;-)
Comment t'adresse-tu à la base Access ? directement ? odbc ?


--
A+
Pierre (3stone) Access MVP
Perso: http://www.3stone.be/
Conseils MPFA: http://www.mpfa.info/







1 2