在mysql的维护表中都保存着每一个带自增属性的表中id的最大值,你可以通过查询这个表里面的字段获取id最大值,然后手工加1就好了
如何在mysql中创建一个自定义函数,返回一个表的ID最大值加上1
查到结果,然后在外部增加不是也可以吗?2013-02-04
在mysql的维护表中都保存着每一个带自增属性的表中id的最大值,你可以通过查询这个表里面的字段获取id最大值,然后手工加1就好了2013-02-20
你那个 id 是 自增的么?
你是不是想
INSERT INTO 某个表
然后获取最新的那个 ID ?
这种情况下, 直接使用数据库自带的 last_insert_id() 函数就可以了。
下面是一个例子:
mysql> CREATE TABLE test_create_tab2 (
-> id INT AUTO_INCREMENT,
-> val VARCHAR(10),
-> PRIMARY KEY (id)
-> );
Query OK, 0 rows affected (0.09 sec)
mysql> INSERT INTO test_create_tab2(val) VALUES ('NO id');
Query OK, 1 row affected (0.03 sec)
mysql> select last_insert_id() as id;
+----+
| id |
+----+
| 1 |
+----+
1 row in set (0.00 sec)
mysql> INSERT INTO test_create_tab2(val) VALUES ('NO id 2');
Query OK, 1 row affected (0.03 sec)
mysql> select last_insert_id() as id;
+----+
| id |
+----+
| 2 |
+----+
1 row in set (0.00 sec)
mysql> select * from test_create_tab2;
+----+---------+
| id | val |
+----+---------+
| 1 | NO id |
| 2 | NO id 2 |
+----+---------+
2 rows in set (0.00 sec)2013-02-05
首先 mysql 你把id设置成自增的 以后插入数据 他会自己+1
没设置自增 你也可以重新在建个副表 这个表存当前主表的最大值。以后每次插入数据 从附表取最大值+12013-02-05
SELECT (MAX(id)+1) as mmax FROM table2013-02-05