文章詳情頁
mysql UNIQUE的條件
瀏覽:187日期: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. boot2docker無法啟動2. 關(guān)docker hub上有些鏡像的tag被標(biāo)記““This image has vulnerabilities””3. docker-compose中volumes的問題4. javascript - mock.js可以存儲數(shù)據(jù)嗎5. nignx - docker內(nèi)nginx 80端口被占用6. java - SSH框架中寫分頁時service層中不能注入分頁類7. docker安裝后出現(xiàn)Cannot connect to the Docker daemon.8. dockerfile - 為什么docker容器啟動不了?9. golang - 用IDE看docker源碼時的小問題10. docker api 開發(fā)的端口怎么獲取?
排行榜

熱門標(biāo)簽
網(wǎng)公網(wǎng)安備