文章詳情頁
mysql UNIQUE的條件
瀏覽:123日期: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 - redis和mongodb怎么結合2. html5和Flash對抗是什么情況?3. JSP頁面導入問題類文件放在WEB-INF / classes中的包中4. ddos - apache日志很多其它網址,什么情況?5. phpstudy 發現多個后門木馬,有人遇到過嗎?6. Thinkphp 下載地址找不到了?7. php自學從哪里開始?8. mysql刪除一個空數據庫報錯Table storage engine for ’proc’ doe9. nginx 504 Gateway Time-out 請問如何設置10. 老師 我是一個沒有學過php語言的準畢業生 我希望您能幫我一下
排行榜
