文章详情页
mysql UNIQUE的条件
浏览:103日期: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. mysql - JAVA怎么实现一个DAO同时实现查询两个实体类的结果集2. sql语句 - 如何在mysql中批量添加用户?3. mysql建表报错,查手册看不懂,求解?4. PHP类属性声明?5. 求大神支招,php怎么操作在一个html文件的<head>标记内添加内容?6. 怎么php怎么通过数组显示sql查询结果呢,查询结果有多条,如图。7. 致命错误: Class ’appfacadeTest’ not found8. 老师们php,插入数据库mysql,都是空的,要怎么解决9. mysql - 数据库建字段,默认值空和empty string有什么区别 11010. phpstady在win10上运行
排行榜
