考虑表中的以下数据
rowid url
1 abc.com
2
3 xyz.com
4 test.com
我可以在 url 列上创建唯一索引。但是,如果我添加另一行包含空 url 的行,则会导致重复键错误。在列上创建唯一索引时是否可以指定条件(例如非空/非空)?我想确保输入的网址应该是唯一的。
谢谢。
最佳答案
首先,NULL 和 EMPTY 之间存在区别。
- Null 不包含任何值。
- Empty 是一个字符串值,但只是空。
所以对于数据库来说null和empty有不同的含义。 如果要存储多个空记录,请确保在表中输入空值(非空值)。即使列具有唯一索引,MySql也支持多个空记录,但不支持空值。了解更多Click here!
希望这能解决您的问题。
关于MySQL:从唯一索引中省略空/空值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46242313/