[ACCESS] Rajouter un champ dans une table [Résolu/Fermé]

Signaler
Messages postés
730
Date d'inscription
mercredi 24 novembre 2004
Statut
Membre
Dernière intervention
15 mars 2008
-
enigmatoile
Messages postés
730
Date d'inscription
mercredi 24 novembre 2004
Statut
Membre
Dernière intervention
15 mars 2008
-
Bonjour,

je souhaite rajouter, via le code, un champ à une de mes tables.
(champ nommé 'date', de type texte.)

J'ai donc mis cette ligne dans mon code :
DoCmd.RunSQL "ALTER TABLE tbl_serveurs ADD COLUMN Date TEXT;"


(c'est quasiment le copié collé de l'aide d'access) et là il me dit 'erreur 3292 : erreur de syntaxe dans la définition de champ'.

Pourtant la syntaxe me semble bonne, quelqu'un a une idée plize?

1 réponse

Messages postés
23913
Date d'inscription
dimanche 26 août 2001
Statut
Modérateur
Dernière intervention
13 janvier 2020
2 730
Salut,

'date' est un mot réservé, change le nom de la colonne ou mets-le entre [].
DoCmd.RunSQL "ALTER TABLE tbl_serveurs ADD COLUMN [Date] TEXT;"
--
A+ Blux
 "Les cons, ça ose tout.
C'est même à ça qu'on les reconnait"
enigmatoile
Messages postés
730
Date d'inscription
mercredi 24 novembre 2004
Statut
Membre
Dernière intervention
15 mars 2008
5
Mici Blux :)

J'oserai une dernière question (après promis j'arrete..... au moins pour aujourd'hui :))

Je veux mettre une valeur par défaut à mon champ Date que je viens de créer, j'utilise ce code mais erreur de syntaxe...

DoCmd.RunSQL "ALTER TABLE tbl_serveurs ALTER COLUMN [Date] TEXT DEFAULT 'mai07' ;"


Anybody knows?
blux
Messages postés
23913
Date d'inscription
dimanche 26 août 2001
Statut
Modérateur
Dernière intervention
13 janvier 2020
2 730
On ne peut pas en DDL (enfin, moi j'ai jamais réussi !)

Il faut faire du VBA :
CurrentDb.TableDefs("matable")("monchamp").Properties("DefaultValue").Value = "mavaleur"
--
A+ Blux
 "Les cons, ça ose tout.
C'est même à ça qu'on les reconnait"
enigmatoile
Messages postés
730
Date d'inscription
mercredi 24 novembre 2004
Statut
Membre
Dernière intervention
15 mars 2008
5 > blux
Messages postés
23913
Date d'inscription
dimanche 26 août 2001
Statut
Modérateur
Dernière intervention
13 janvier 2020

Merci...

Bon, en fait je me suis pareçue que c'est pas vraiment ça que je veux faire.

Ce que je veux, c'est maintenant que j'ai ajouté mon champ 'Date', mettre sa valeur à 'mai07' pour tous les enregistrements.

Je sais que je peux faire ça via une requete mise à jour, mais si je peux faire autrement ça m'arrange...

Est ce il possible?
enigmatoile
Messages postés
730
Date d'inscription
mercredi 24 novembre 2004
Statut
Membre
Dernière intervention
15 mars 2008
5 > enigmatoile
Messages postés
730
Date d'inscription
mercredi 24 novembre 2004
Statut
Membre
Dernière intervention
15 mars 2008

Euh en fait j'ai trouvé, super simple :

DoCmd.RunSQL "UPDATE tbl_serveurs SET [Date]='mai07' ;"