文章詳情頁
mysql UNIQUE的條件
瀏覽:113日期:2022-06-18 16:22:29
問題描述
ALTER TABLE `table` ADD `unionid` VARCHAR( 255 ) NOT NULL
然后設(shè)置唯一索引
ALTER TABLE `table` ADD UNIQUE (`unionid`)
提示
1062 - Duplicate entry ’’ for key ’unionid’請問這是為什么呢?
問題解答
回答1:第一句SQL:你給table表增加了unionid列,并且是非空字符串,所以初始值是空字符串’’;
第二句SQL:你給table表的unionid列建立唯一約束,但唯一約束的前提是unionid列的值不重復(fù),然而unionid列的所有值都是空字符串’’,所以會報Duplicate entry ’’ for key ’unionid’。
解決方法:先把unionid的值修正為不重復(fù)后再給該列添加唯一約束。
回答2:直接進(jìn)數(shù)據(jù)庫操作啊,你添加索引就會有命令提示,這樣不就知道哪里錯了
相關(guān)文章:
1. javascript - webpack熱加載配置不生效2. css3 - 這個右下角折角用css怎么畫出來?3. debian - docker依賴的aufs-tools源碼哪里可以找到啊?4. mysql - eclispe無法打開數(shù)據(jù)庫連接5. windows2003下的apache響應(yīng)時間特別長?6. javascript - 在 model里定義的 引用表模型時,model為undefined。7. 關(guān)于Java引用傳遞的一個困惑?8. java - 根據(jù)月份查詢多個表里的內(nèi)容怎么實(shí)現(xiàn)好?9. javascript - 一個關(guān)于客戶端和前端通信的疑惑?10. php - 一個操作請求多個服務(wù)如何保證數(shù)據(jù)的安全?
排行榜

熱門標(biāo)簽