[Base] Masque de saisie

Re,

Les calculs sont également documentés (une demi-douzaine d'entrées dans la
FAQ) :
http://wiki.documentfoundation.org/FR/FAQ/Base#Requ.C3.AAtes

En fait, je pensais aux champs calculés dans les formulaires ou rapports :wink:

Bravo pour la Faq en tout cas !

Marie jo

//Bonsoir,

Étant encore peu expérimenté, je bute sur une expression pourtant simple :
je voudrais changer les données du champ "ref_pays" (qui est vide) pour le faire passer à "1" quand le champ "PaysObs" correspond à "FRANCE".

J'essaie la formule suivante dans plusieurs variantes :

SET 'ref_pays' = '1' AS 'ref_pays' FROM 'mabase'.'t_pays' WHERE 'PaysObs' = 'FRANCE'

   mais j'ai toujours un message d'erreur :
  "Statut SQL: HY000
Code d'erreur: 1000
Syntax error in SQL expression"

Quelqu'un saurait m'aider ?

Bonjour,

Étant encore peu expérimenté, je bute sur une expression pourtant simple :
je voudrais changer les données du champ "ref_pays" (qui est vide) pour
le faire passer à "1" quand le champ "PaysObs" correspond à "FRANCE".

J'essaie la formule suivante dans plusieurs variantes :

SET 'ref_pays' = '1' AS 'ref_pays' FROM 'mabase'.'t_pays' WHERE
'PaysObs' = 'FRANCE'

mais j'ai toujours un message d'erreur :
"Statut SQL: HY000
Code d'erreur: 1000
Syntax error in SQL expression"

Quelqu'un saurait m'aider ?

Essaie de mettre des guillemets doubles autour des noms de colonnes et de tables :

SET "ref_pays" = '1' AS "ref_pays" FROM "mabase"."t_pays" WHERE
"PaysObs" = 'FRANCE'

ça ne résout pas le problème, mais le message d'erreur a changé :
"Statut SQL: HY000
Code d'erreur: 1000
syntax error, unexpected $end, expecting BETWEEN or IN or SQL_TOKEN_LIKE"

/Le 06/08/2011 08:18, Jean-Francois Nifenecker a écrit :confused:

Bonjour,
Tu peux consulter le guide de la syntaxe SQL ici :
http://wiki.services.openoffice.org/wiki/FR/Documentation/HSQLDB_Guide/ch09#UPDATE

ce qui devrait donner ce code :
UPDATE "t_pays" SET 'ref_pays' = '1' AS 'ref_pays' WHERE 'PaysObs' = 'FRANCE'

J.M

Pardon Jean-Michel,
J'ai oublié que de préciser que je n'utilise pas le moteur HSQL (trop limité pour les tables importantes) mais le moteur MySQL.
Donc, la syntaxe que tu me proposes (et dont je te remercie) ne marche toujours pas.

/Le 06/08/2011 09:03, Jean Michel PIERRE a écrit :confused:

Bonjour,

Enlève tout ce qui est guillemet ou apostrophe et termine éventuellement par un ;

Bernard

Bravo Bernard,

la syntaxe qui fonctionne est :

UPDATE mabase.t_pays SET ref_pays=1 WHERE PaysObs='FRANCE'

Merci à tous et bon week-end :wink:
/
Le 06/08/2011 10:28, Bernard Ribot a écrit :confused:

J'avais été un peu vite : il faut laisser le "literal" entre quote, évidemment.:slight_smile:

Le ; c'est selon : avec Base > Outils > SQL il n'y en a pas besoin, avec MySQL Query Browser ou en ligne de commande par exemple il faut terminer par ;

Bon week-end