2013-02-13 2 views
0

J'essaie d'ouvrir un script dans mon workbench mais le mot-clé GENERATED est souligné en rouge avec un message d'erreur indiquant: 'Erreur de syntaxe, IDENT_QUOTED inattendu. Ceci est juste un script DB simple.Script mysql. Erreur de syntaxe, message d'erreur IDENT_QUOTED inattendu sur le mot clé GENERATED

DROP TABLE Addresses; 

    CREATE TABLE Addresses 
    (
     AddressID INT NOT NULL GENERATED ALWAYS AS IDENTITY, 
     FirstName VARCHAR (15) NOT NULL, 
     LastName VARCHAR (30) NOT NULL, 
     Email VARCHAR (30) NOT NULL, 
     PhoneNumber VARCHAR (15) NOT NULL 
    ); 
    INSERT INTO Addresses (FirstName,LastName,Email,PhoneNumber) 
     VALUES ('Mike','Green','[email protected]','555-5555'), 
     ('Mary','Brown','[email protected]','555-1234'); 

Répondre

0

Vous vouliez probablement dire

CREATE TABLE Addresses 
(
    AddressID INT NOT NULL AUTO_INCREMENT, 
    FirstName VARCHAR (15) NOT NULL, 
    LastName VARCHAR (30) NOT NULL, 
    Email VARCHAR (30) NOT NULL, 
    PhoneNumber VARCHAR (15) NOT NULL, 
    PRIMARY KEY(AddressID) 
); 

est ici sqlfiddle

+0

Obligé. Je vous remercie –

0

MySql ne suit pas toute la syntaxe standard SQL:

Vous devez utiliser AUTO_INCREMENT PRIMARY KEY

Voir exemple ci-dessous :

CREATE TABLE Addresses 
    (
     AddressID INT NOT NULL AUTO_INCREMENT PRIMARY KEY, 
     FirstName VARCHAR (15) NOT NULL, 
     LastName VARCHAR (30) NOT NULL, 
     Email VARCHAR (30) NOT NULL, 
     PhoneNumber VARCHAR (15) NOT NULL 
    ); 
0

Si vous essayez avec ceci, il ne générera pas d'erreur et votre table sera créée.

AddressID INT NOT NULL AUTO_INCREMENT, 

et dernier PRIMARY KEY(AddressID)

Questions connexes