文章详情页
mysql UNIQUE的条件
浏览:175日期:2022-06-18 16:22:29
问题描述
ALTER TABLE `table` ADD `unionid` VARCHAR( 255 ) NOT NULL
然后设置唯一索引
ALTER TABLE `table` ADD UNIQUE (`unionid`)
提示
1062 - Duplicate entry ’’ for key ’unionid’请问这是为什么呢?
问题解答
回答1:第一句SQL:你给table表增加了unionid列,并且是非空字符串,所以初始值是空字符串’’;
第二句SQL:你给table表的unionid列建立唯一约束,但唯一约束的前提是unionid列的值不重复,然而unionid列的所有值都是空字符串’’,所以会报Duplicate entry ’’ for key ’unionid’。
解决方法:先把unionid的值修正为不重复后再给该列添加唯一约束。
回答2:直接进数据库操作啊,你添加索引就会有命令提示,这样不就知道哪里错了
相关文章:
1. angular.js - angularjs ng-class指令改变ng-click点击的class属性失效2. golang - 用IDE看docker源码时的小问题3. javascript - 如何在外部点击,跳转到网页后,显示指定的模块。4. mysql 优化之性别优化5. python - 如何给模块传参数,参数是模块的函数名?6. javascript - JQuery如何给新建的img标签添加onload事件,并自动调用。7. CSS3 flex 如何让高度不等的同排等高?8. python 读取csv文件可以读取但内容错误,但单独用excel打开正常,如何解决?9. 前端HTML与PHP+MySQL连接10. mysql_replication - mysql读写分离时如果单台写库也无法满足性能怎么解决
排行榜

网公网安备