永发信息网

mysql设置了唯一约束之后插入相同数据失败但自增ID还是会+1

答案:2  悬赏:0  手机版
解决时间 2021-02-04 00:54
mysql设置了唯一约束之后插入相同数据失败但自增ID还是会+1,到下一条能插入的数据的时候,ID之间就差了2,怎么解决?
最佳答案
新建一个表d:
drop table if exists d;
create table d(id int primary key auto_increment,num int unique);
向表d插入值:
insert into d(num) values(1);
重复插入后查询:
1 1
2 3
3 4

结论:插入失败自动id不会增长。我使用的是mysql5.0。你可以把你的语句粘贴出来简单描述一下吗?
全部回答
我试了,这个语句要是直接在mysql命令行里执行的话,自增字段id设成空字符串'',也是会报错的。估计php是做了特殊处理,如果判断出是自增字段,就不管实际输入的值了。 用java,应该是没有这种处理吧。不管是jdbc拼sql也好,用框架hibernate或mybatis也好,就不给id字段赋值就好了,是可以成功插入的,就是最终拼出来的sql应该类似, insert into member(username, ......) values('yourusername',......);
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
仁康宠物门诊地址好找么,我有些事要过去
阿根廷修改出口税的原因是什么
请问15岁,被骗200块钱,家长要报警警察会管
男朋友不举 想分手又不知道怎么说 烦
you surl是什么意思
雨富农贸产品公司我想知道这个在什么地方
企业宣告发放现金股利和股票股利时,应作为负
侵吞的意思是什么啊?知道的请说下!
可以推荐几部里番吗?
秋红动物保健中心地址在什么地方,我要处理点
假定你是李华,某中学生英语学习网站音乐名人
电脑一开机就显示Checking for CD-ROM Floppy
根据图所示对血液的处理及其结果,分析回答:
功夫奶酪(胜利广场店)地址在什么地方,想过去
紫光F10点读机功能
推荐资讯
First Day Of The Rest Of Our Lives 歌词
p2p网贷平台里的资金托管与存管有什么区别啊
致远围棋(五四路)地址在什么地方,我要处理点
小天鹅影楼地址在什么地方,我要处理点事
经济学挂科严重不严重,挂了英语和经济学
方圆平价水果副食批发怎么去啊,有知道地址的
GBA游戏机用小灯好还是不用小灯好
Y646在哪里啊,我有事要去这个地方
我该往那查快递 谁能告诉我
用微信还信用卡没有到账怎么联系腾讯客服?
为什么多数人都选择自己的老公或者媳妇比孩子
南宁东路/建保路(路口)地址在哪,我要去那里
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?