[SQL ] mysql 的 unique 一問

看板Database (資料庫)作者 (ogrechen)時間17年前 (2007/05/22 20:56), 編輯推噓0(000)
留言0則, 0人參與, 最新討論串1/3 (看更多)
各位版眾們您好: 不好意思,上來請教一個問題,以下是例子: 伺服器版本: 4.1.21-community-nt 以下是資料表 tab 的內容 [tab] mid: 會員編號 (primary) - auto_increment pid: 身分證字號 (unique) email: 電子郵件 (unique) name: 姓名 ... ... (ps:上述中的 primary, 與unique的建立方式如下) PRIMARY KEY (`mid`), UNIQUE KEY `uniq` (`pid`,`email`) 因為程式需求,pid與email皆不可以重複 ################################################################### [以下是我的問題] 我的問題是, 當我要 insert 資料時, 如下: INSERT INTO `tab` (`pid`, `email`, `name`) VALUES ('A123456789', 'abc@hinet.net', '王XX'); INSERT INTO `tab` (`pid`, `email`, `name`) VALUES ('A123456789', 'ooxx@cc.xxu.edu.tw', '林XX'); 兩筆資料都可以順利存入資料庫當中!!!!!!!!!!!!!!!! 可是 'A123456789' 明顯不滿足 UNIQUE 的特性 請教各位版友,這到底是甚麼原因呢???? ################################################################## ps: 但如果把 unique key 建立的方式改成 UNIQUE KEY `uniq` (`pid`), UNIQUE KEY `uniq2` (`email`) 就不會造成上述的問題 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 220.139.131.127 ※ 編輯: ogrechen 來自: 220.139.131.127 (05/22 20:57) ※ 編輯: ogrechen 來自: 220.139.131.127 (05/22 21:02)
文章代碼(AID): #16KkXnr6 (Database)
文章代碼(AID): #16KkXnr6 (Database)