mysql脚本。语法错误,关键字GENERATED上的意外IDENT_QUOTED错误消息

时间:2013-02-13 03:56:15

标签: mysql

我正在尝试在我的工作台中打开一个脚本,但关键字GENERATED以红色加下划线,并显示错误消息:`语法错误,意外IDENT_QUOTED。 这只是一个简单的DB脚本。

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','demo1@deitel.com','555-5555'),
        ('Mary','Brown','demo2@deitel.com','555-1234');

3 个答案:

答案 0 :(得分:0)

你可能意味着

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)
);

这是sqlfiddle

答案 1 :(得分:0)

MySql不遵循所有标准SQL语法:

您需要使用AUTO_INCREMENT PRIMARY KEY

见下面的例子:

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
    );

答案 2 :(得分:0)

如果您尝试使用此功能,则不会生成错误,您的表格也会被创建。

AddressID INT NOT NULL AUTO_INCREMENT,

和上次PRIMARY KEY(AddressID)