如何使用用户定义变量为两个表设置不同的自动增量ID?
为此,您可以使用LAST_INSERT_ID()。让我们首先创建一个表。在这里,我们将StudentId列的自动增量ID设置为 –
mysql> create table DemoTable1 (StudentId int NOT NULL AUTO_INCREMENT PRIMARY KEY);
Query OK, 0 rows affected (0.58 sec)
使用插入命令将一些记录插入表中 –
mysql> insert into DemoTable1 values(null);
Query OK, 1 row affected (0.18 sec)
使用SELECT语句从表中显示所有记录 –
mysql> select *from DemoTable1;
这将产生以下输出 –
+-----------+
| StudentId |
+-----------+
| 1 |
+-----------+
1行记录(0.00秒)
以下是获取最后插入ID的查询。我们将其设置为用户定义变量 –
mysql> set @studentId=last_insert_id();
Query OK, 0 rows affected (0.00 sec)
以下是创建第二个表的查询 –
mysql> create table DemoTable2 (Id int);
Query OK, 0 rows affected (0.61 sec)
以下是为两个表设置不同自动增量ID的查询 –
mysql> insert into DemoTable2 values(@studentId+1);
Query OK, 1 row affected (0.13 sec)
使用SELECT语句从表中显示所有记录 –
mysql> select *from DemoTable2;
这将产生以下输出 –
+------+
| Id |
+------+
| 2 |
+------+
1行记录(0.00秒)
阅读更多:MySQL 教程
极客教程