文章詳情頁
mysql UNIQUE的條件
瀏覽:107日期: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優化 - MySQL如何為配置表建立索引?2. python - linux怎么在每天的凌晨2點執行一次這個log.py文件3. 如何用筆記本上的apache做微信開發的服務器4. 數據庫 - Mysql的存儲過程真的是個坑!求助下面的存儲過程哪里錯啦,實在是找不到哪里的問題了。5. 關于mysql聯合查詢一對多的顯示結果問題6. 冒昧問一下,我這php代碼哪里出錯了???7. windows誤人子弟啊8. php傳對應的id值為什么傳不了啊有木有大神會的看我下方截圖9. MySQL主鍵沖突時的更新操作和替換操作在功能上有什么差別(如圖)10. 實現bing搜索工具urlAPI提交
排行榜
