从 MySQL 插入查询中获取新记录键 ID?


我们可以使用 MySQL 的 LAST_INSERT_ID() 函数来获取新记录键。首先,我们将创建一个表并使用 LAST_INSERT_ID() 为其插入记录。

让我们用 create 命令创建一个表。

查询如下−

mysql> create table LastInsertRecordIdDemo
   -> (
   -> id int auto_increment,
   -> value varchar(100),
   -> primary key(id)
   -> );
Query OK, 0 rows affected (0.52 sec)

创建表后,我们将插入记录并使用 LAST_INSERT_ID() 函数设置该记录。

mysql> insert into LastInsertRecordIdDemo values(1,'Low');
Query OK, 1 row affected (0.10 sec)

mysql> insert into LastInsertRecordIdDemo values(LAST_INSERT_ID(),'High');
Query OK, 1 row affected (0.11 sec)

现在我们可以在 select 语句的帮助下显示所有记录。

查询如下−

mysql> select *from LastInsertRecordIdDemo;

以下是输出。

+----+-------+
| id | value |
+----+-------+
|  1 | Low   |
|  2 | High  |
+----+-------+
2 rows in set (0.00 sec)

现在要插入记录,我们需要在 LAST_INSERT_ID () 函数中添加 1。查询如下−

mysql> insert into LastInsertRecordIdDemo values(LAST_INSERT_ID()+1,'Medium');
Query OK, 1 row affected (0.08 sec)

现在我们可以使用 select 语句显示所有记录。

mysql> select *From LastInsertRecordIdDemo;

以下是输出。

+----+--------+
| id | value  |
+----+--------+
|  1 | Low    |
|  2 | High   |
|  3 | Medium |
+----+--------+
3 rows in set (0.00 sec)

更新于: 30-7 月-2019

513 次浏览

开启你的 职业生涯

通过完成课程获得认证

开始
广告