[ACCESS] Rajouter un champ dans une table

Résolu/Fermé
enigmatoile Messages postés 730 Date d'inscription mercredi 24 novembre 2004 Statut Membre Dernière intervention 15 mars 2008 - 2 mai 2007 à 15:41
enigmatoile Messages postés 730 Date d'inscription mercredi 24 novembre 2004 Statut Membre Dernière intervention 15 mars 2008 - 2 mai 2007 à 17:05
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

blux Messages postés 26010 Date d'inscription dimanche 26 août 2001 Statut Modérateur Dernière intervention 26 avril 2024 3 289
2 mai 2007 à 15:55
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"
1
enigmatoile Messages postés 730 Date d'inscription mercredi 24 novembre 2004 Statut Membre Dernière intervention 15 mars 2008 5
2 mai 2007 à 16:18
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?
0
blux Messages postés 26010 Date d'inscription dimanche 26 août 2001 Statut Modérateur Dernière intervention 26 avril 2024 3 289
2 mai 2007 à 16:32
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"
0
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 26010 Date d'inscription dimanche 26 août 2001 Statut Modérateur Dernière intervention 26 avril 2024
2 mai 2007 à 16:48
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?
0
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
2 mai 2007 à 17:05
Euh en fait j'ai trouvé, super simple :

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