0

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

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

3 回答 3

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

于 2013-02-13T04:01:54.393 回答
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
    );
于 2013-02-13T04:02:39.327 回答
0

如果您尝试这样做,它将不会产生错误,并且您的表将被创建。

AddressID INT NOT NULL AUTO_INCREMENT,

最后PRIMARY KEY(AddressID)

于 2013-02-13T04:04:39.557 回答