Mysql 函数last\u insert\u id返回0

Mysql 函数last\u insert\u id返回0,mysql,Mysql,我有问题: mysql> CREATE TABLE auto(id int AUTO_INCREMENT PRIMARY KEY,num int); Query OK, 0 rows affected (1.40 sec) mysql> INSERT INTO auto VALUES(1,1); Query OK, 1 row affected (0.51 sec) mysql> SELECT LAST_INSERT_ID() FROM a

我有问题:

 mysql> CREATE TABLE auto(id int AUTO_INCREMENT PRIMARY KEY,num int);
    Query OK, 0 rows affected (1.40 sec)

    mysql> INSERT INTO auto VALUES(1,1);
    Query OK, 1 row affected (0.51 sec)

    mysql> SELECT LAST_INSERT_ID() FROM auto;
    +------------------+
    | LAST_INSERT_ID() |
    +------------------+
    |                0 |

为什么返回0?

您不需要从“自动”返回,它是通过发出“选择上次插入ID”来使用的;。抱歉…Asnswer:LAST_INSERT_ID仅适用于自动生成的主键,该主键是在自动增量字段中创建的。在您的情况下,看起来您是显式地提供id,因此没有设置最后一个插入id。