文章詳情頁
mysql UNIQUE的條件
瀏覽:129日期: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. PHP類中的$this2. python - Django Admin創建不關聯任何model的自定義頁面3. javascript - h5分享鏈接到qq或者微信時有一個縮略圖還有一些說明文字,這個要怎么去修改里面的圖片和內容?4. android - 第三方App調用高德地圖,總是直接進入到導航頁面,有沒有辦法進入首頁?5. 誰有mysql5.7安裝的詳細教程6. mysql - 看這條sql有可能被注入嗎7. javascript - 網站啟用HTTPS 微信自定義分享失效8. python2.7 - Python安裝模組不成功9. python - Django操作數據庫遇到問題,無法查詢更新后的數據10. 請問是對象還是數組
排行榜
