临时表中的自动增量

Tom*_*n89 0 mysql sql temp-tables auto-increment

我正在尝试创建一个具有自动递增的关键字段的临时表.但我一直遇到语法错误.

这是我正在尝试的:

CREATE TEMPORARY TABLE
    RETURN_ARTISTS
        (KEY INT(11) NOT NULL AUTO_INCREMENT,
        ARTIST_1_KEY INT(11),
        ARTIST_2_KEY INT(11));

INSERT INTO RETURN_ARTISTS (1,1);

DELETE TABLE RETURN_ARTISTS;
Run Code Online (Sandbox Code Playgroud)

这是我一直得到的错误:

Err] 1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'INT(11) NOT NULL AUTO_INCREMENT,
        ARTIST_1_KEY INT(11),
        ARTIST_2_KEY INT(' at line 3
Run Code Online (Sandbox Code Playgroud)

Sho*_*ker 5

首先,key是一个保留字,用`来逃避它

其次,使用auto_increment列时,必须将该列定义为键.

CREATE TEMPORARY TABLE
`RETURN_ARTISTS`
    (`KEY` INT(11) NOT NULL AUTO_INCREMENT,
    ARTIST_1_KEY INT(11),
    ARTIST_2_KEY INT(11),
    KEY (`KEY`));
Run Code Online (Sandbox Code Playgroud)