ajouter un champs à une table en sql - Programmation
Marsh Posté le 27-04-2001 à 13:28:58
Il faut utiliser la commande ALter Table ... puis add pour ajouter un champ
aide d'MSDN:
ALTER TABLE – SQL Command
Example See Also
Programmatically modifies the structure of a table.
Syntax
ALTER TABLE TableName1
ADD | ALTER [COLUMN] FieldName1
FieldType [(nFieldWidth [, nPrecision])]
[NULL | NOT NULL]
[CHECK lExpression1 [ERROR cMessageText1]]
[DEFAULT eExpression1]
[PRIMARY KEY | UNIQUE]
[REFERENCES TableName2 [TAG TagName1]]
[NOCPTRANS]
[NOVALIDATE]
-or-
ALTER TABLE TableName1
ALTER [COLUMN] FieldName2
[NULL | NOT NULL]
[SET DEFAULT eExpression2]
[SET CHECK lExpression2 [ERROR cMessageText2]]
[DROP DEFAULT]
[DROP CHECK]
[NOVALIDATE]
-or-
ALTER TABLE TableName1
[DROP [COLUMN] FieldName3]
[SET CHECK lExpression3 [ERROR cMessageText3]]
[DROP CHECK]
[ADD PRIMARY KEY eExpression3 TAG TagName2 [FOR lExpression4]]
[DROP PRIMARY KEY]
[ADD UNIQUE eExpression4 [TAG TagName3 [FOR lExpression5]]]
[DROP UNIQUE TAG TagName4]
[ADD FOREIGN KEY [eExpression5] TAG TagName4 [FOR lExpression6]
REFERENCES TableName2 [TAG TagName5]]
[DROP FOREIGN KEY TAG TagName6 [SAVE]]
[RENAME COLUMN FieldName4 TO FieldName5]
[NOVALIDATE]
Marsh Posté le 27-04-2001 à 13:35:12
euh...
mois je suis en ligne de commande sur postgres (psql)
et ALTER y connait pas ?
Marsh Posté le 27-04-2001 à 13:48:56
pourtant Alter est une commande SQL on ne peut plus habituelle... Connais pas d'autres commandes SQL pour modifier des tables
Marsh Posté le 27-04-2001 à 13:56:43
alter.. c du sql pure non ?
Tous les xx_SQL devraient le reconnaitre ??!!
Marsh Posté le 27-04-2001 à 14:20:18
(si mes souvenirs sont bons)
Le souci d'un ALTER est qu'il ne permet de rajouter que des champs NULL et en dernière position d'une table...
Sinon, il faut sauvegarder tes données dans une table tempo, dropper, recréer et réalimenter la nouvelle table.
Ce qui n'est, somme toute, pas beaucoup plus compliqué.
Marsh Posté le 27-04-2001 à 13:25:18
j'ai une table, elle à 3 champs et je voudrais rajouter un quatrième nom champs
(je vois la 5tax lors de la création de la table mais quand elle est déjà créer et qu'il faut juste ajouter un champs ?