如何更正唯一键以不允许重复条目

时间:2010-03-11 04:45:34

标签: mysql phpmyadmin

这是我的问题: 密钥“idx_SR_u_Identity_FingerPrintProfile”用于将字段“c_r_Fingerprint”和“c_r_Profile”限制为唯一。

似乎我做错了,因为表中的所有4个条目对这两个字段都有相同的值。如果两个记录具有相同的指纹或相同的配置文件是可以的,但不能同时使用。

如何正确指定此唯一键,以便不允许这样的重复?

alt text http://www.Rigel222.Com/Images/Unique.jpg

1 个答案:

答案 0 :(得分:0)

我认为您的密钥是正确的,但MySQL不会将其应用于NULL值。 MySQL Docs for CREATE TABLE州:

  

UNIQUE索引允许包含NULL的列的多个NULL值。

虽然像(1,2)这样的条目只能出现一次,但像(1,NULL)这样的条目可能会多次出现,由于NULL,它们不会被认为是重复的。

根据您的使用案例,您可以禁止NULL两列来规避问题。