Comment AJOUTER et supprimer des colonnes dans un seul ALTER TABLE
J'ai essayé ce qui suit, mais j'ai une erreur de syntaxe
ALTER TABLE Grades (
DROP COLUMN (Student_FamilyName, Student_Name),
ADD Student_id INT );
Est-il possible d'effectuer une DROP
et un ADD
dans le même ALTER TABLE
déclaration?
- Vous ne pouvez pas faire de chute et de créer avec une instruction alter, la séparer
- Vous passez à PostgreSQL (toux), qui prend en charge plusieurs modifications comme une extension de la syntaxe SQL standard. (Mais même si je les utilise PostgreSQL beaucoup, j'ai l'habitude d'écrire de SQL qui évite les extensions.)
- Qui SGBD que vous utilisez? Oracle? DB2?
Vous devez vous connecter pour publier un commentaire.
Si vous regardez la ALTER TABLE SYTAX
vous verrez ce
Cela peut être réduite à
ALTER TABLE { ALTER COLUMN column_name | ADD | DROP }
Selon Transact-SQL Conventions de Syntaxe (Transact-SQL) la | (barre verticale)
De sorte que vous ne pouvez pas Modifier, supprimer ou Ajouter en une seule instruction. Vous avez également les parenthèses et les virgules qui ne fonctionne pas. Donc vous aurez besoin de
Si vous en avez besoin pour être atomique action, il vous suffit de les envelopper dans une transaction
Dans le cas où votre base de données est Mysql, vous pouvez le faire de cette façon
Travaille dans mysql 5.5.5