MySQL 我能找出下一个auto_increment使用的值吗?
是的,你可以通过以下语法使用SELECT AUTO_INCREMENT找出下一个auto_increment的值 –
SELECT AUTO_INCREMENT
FROM INFORMATION_SCHEMA.TABLES
WHERE TABLE_SCHEMA= yourDatabaseName AND TABLE_NAME=yourTableName;
让我们首先创建一个表 –
mysql> create table DemoTable
(
ClientId int NOT NULL AUTO_INCREMENT PRIMARY KEY,
ClientName varchar(20),
ClientAge int
);
Query OK, 0 rows affected (1.33 sec)
使用insert命令在表中插入一些记录 –
mysql> insert into DemoTable(ClientName,ClientAge) values('John',23);
Query OK, 1 row affected (0.35 sec)
mysql> insert into DemoTable(ClientName,ClientAge) values('Carol',21);
Query OK, 1 row affected (0.28 sec)
mysql> insert into DemoTable(ClientName,ClientAge) values('Bob',24);
Query OK, 1 row affected (0.14 sec)
mysql> insert into DemoTable(ClientName,ClientAge) values('David',25);
Query OK, 1 row affected (0.25 sec)
以下是使用select语句显示表中所有记录的查询 –
mysql> select *from DemoTable;
这将产生以下输出 –
+----------+------------+-----------+
| ClientId | ClientName | ClientAge |
+----------+------------+-----------+
| 1 | John | 23 |
| 2 | Carol | 21 |
| 3 | Bob | 24 |
| 4 | David | 25 |
+----------+------------+-----------+
4 rows in set (0.00 sec)
以下是在上述表中查找下一个auto_increment值的查询。
mysql> SELECT AUTO_INCREMENT
FROM INFORMATION_SCHEMA.TABLES
WHERE TABLE_SCHEMA= 'sample' AND TABLE_NAME='DemoTable';
这将产生以下输出 –
+----------------+
| AUTO_INCREMENT |
+----------------+
| 5 |
+----------------+
1 row in set (0.20 sec)
阅读更多:MySQL 教程
极客教程