mysql数据表中,有几条记录主键id为1,2,3,4,5,把id为5的这条数据删了。如果下次再insert一条数据的话

mysql数据表中,有几条记录主键id为1,2,3,4,5,把id为5的这条数据删了,如果下次再insert一条数据的话,如何使这条数据的id为6,有办法实现吗?谢谢!... mysql数据表中,有几条记录主键id为1,2,3,4,5,把id为5的这条数据删了,如果下次再insert一条数据的话,如何使这条数据的id为6,有办法实现吗?谢谢! 展开
 我来答
superman600
2011-12-21
知道答主
回答量:37
采纳率:0%
帮助的人:22.5万
展开全部

主键本来就是从原来删除的下一个值开始的 刚刚试验 有图为证

wood_man
2011-12-21 · TA获得超过137个赞
知道小有建树答主
回答量:78
采纳率:100%
帮助的人:63.5万
展开全部
mysql> CREATE DATABASE test;
Query OK, 1 row affected (0.00 sec)

mysql> USE test;
Database changed
mysql> CREATE TABLE t1(
-> `id` int(11) unsigned NOT NULL AUTO_INCREMENT,
-> `content` char(100) NULL,
-> PRIMARY KEY(`id`)
-> );
Query OK, 0 rows affected (0.14 sec)

mysql> INSERT INTO t1(content) VALUES('test1');
Query OK, 1 row affected (0.05 sec)

mysql> INSERT INTO t1(content) VALUES('test2');
Query OK, 1 row affected (0.02 sec)

mysql> SELECT * FROM t1;
+----+---------+
| id | content |
+----+---------+
| 1 | test1 |
| 2 | test2 |
+----+---------+
2 rows in set (0.00 sec)

mysql> DELETE FROM t1 WHERE id=2;
Query OK, 1 row affected (0.01 sec)

mysql> INSERT INTO t1(content) VALUES('test3');
Query OK, 1 row affected (0.02 sec)

mysql> SELECT * FROM t1;
+----+---------+
| id | content |
+----+---------+
| 1 | test1 |
| 3 | test3 |
+----+---------+
2 rows in set (0.00 sec)
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
yang900919
2011-12-22
知道答主
回答量:5
采纳率:0%
帮助的人:8265
展开全部
把最后一条的记录中的id读出来,自增两次后再插入数据库
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
mupeng21
2011-12-21 · TA获得超过421个赞
知道答主
回答量:245
采纳率:0%
帮助的人:232万
展开全部
主键设定为自动递增不就可以了么?
追问
自增的话,新的数据id还会是5,有没有办法让它的id自动成为6呢?
追答
怎么可能?主键会记录它之前最后一次的值的,不可能插入新的数据时使用以前的主键值啊?
我这里没有出现你说的情况呢
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式