web-dev-qa-db-fra.com

Ajouter plusieurs colonnes dans MySQL avec une seule déclaration

J'essaie d'ajouter plusieurs colonnes à une table existante dans phpMyAdmin, mais j'obtiens toujours la même erreur:

# 1064 - Vous avez une erreur dans votre syntaxe SQL; Consultez le manuel correspondant à la version de votre serveur MySQL pour connaître la syntaxe correcte ...

Je suis en train d'écrire:

ALTER TABLE `WeatherCenter`
   ADD COLUMN
      BarometricPressure SMALLINT NOT NULL,
      CloudType VARCHAR(70) NOT NULL,
      WhenLikelyToRain VARCHAR(30) NOT NULL;

J'ai déjà fait référence à des publications précédentes sur StackOverflow et je suis les recommandations des experts. Pourquoi une erreur me parvient-elle?

13
Jason12
 ALTER TABLE table_name
 ADD COLUMN column_name datatype

syntaxe correcte 

ALTER TABLE `WeatherCenter`
   ADD COLUMN BarometricPressure SMALLINT NOT NULL,
   ADD COLUMN CloudType VARCHAR(70) NOT NULL,
   ADD COLUMN  WhenLikelyToRain VARCHAR(30) NOT NULL;

vérifier syntaxe

30
ashkufaraz

Vous devez spécifier plusieurs ADD COLUMN

ALTER TABLE `WeatherCenter`
      ADD COLUMN  BarometricPressure SMALLINT NOT NULL,
      ADD COLUMN CloudType VARCHAR(70) NOT NULL,
      ADD COLUMN WhenLikelyToRain VARCHAR(30) NOT NULL;
8
Darren

Vous pouvez modifier une table et ajouter plusieurs colonnes dans une instruction en procédant ainsi.

alter table WeatherCenter add column (BarometricPressure SMALLINT NOT NULL, CloudType VARCHAR(70) NOT NULL, WhenLikelyToRain VARCHAR(30) NOT NULL);
1
stealth

Comme vous ajoutez des colonnes à une table existante, je ne pense pas que vous soyez censé déclarer NOT NULL dans la déclaration. En outre, vous n'avez pas besoin d'utiliser ADD COLUMN , vous pouvez simplement utiliserADD.

ALTER TABLE WeatherCentre
   ADD BarometricPressure SMALLINT,
   ADD CloudType VARCHAR(70),
   ADD WhenLikelyToRain VARCHAR(30);
0
Damian Jauregui

J'espère que cela t'aidera:

alter table A ajoute prénom_varichar (10), nom_variable varchar (10);

0
Abhishek

Ceci est tiré de Documentation MySQL officielle

ALTER TABLE tbl_name
    [alter_specification [, alter_specification] ...]
    [partition_options]

alter_specification:
    table_options
  | ADD [COLUMN] col_name column_definition
        [FIRST | AFTER col_name]
  | ADD [COLUMN] (col_name column_definition,...)

Doublage possible de alter table add MULTIPLE column APRES column1

0
MontyPython