MySQL:从唯一索引中省略空/空值

标签 mysql

考虑表中的以下数据

rowid   url
1       abc.com
2       
3       xyz.com
4       test.com

我可以在 url 列上创建唯一索引。但是,如果我添加另一行包含空 url 的行,则会导致重复键错误。在列上创建唯一索引时是否可以指定条件(例如非空/非空)?我想确保输入的网址应该是唯一的。

谢谢。

最佳答案

首先,NULLEMPTY 之间存在区别。

  1. Null 不包含任何值。
  2. Empty 是一个字符串值,但只是空。

所以对于数据库来说null和empty有不同的含义。 如果要存储多个空记录,请确保在表中输入空值(非空值)。即使列具有唯一索引,MySql也支持多个空记录,但不支持空值。了解更多Click here!

希望这能解决您的问题。

关于MySQL:从唯一索引中省略空/空值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46242313/

相关文章:

mysql - 寻找一种从 MySQL 数据库查询数据并将其写入输出 txt 文件的方法

mysql - 根据sqlserver/ssis中的非空条件将表拆分为多个表

php - 我将如何使用 PHP substr?

python - 遍历元组内的元组并使用元组内的字符串作为变量

php - 比较以前的 ENCRYPT() 调用和新的 ENCRYPT() 调用 mysql

php - Facebook 登录和 MySQL

python - MySQLdb 占位符实现不起作用

MySql-数据透视表

MySQL join 基于前 4 个字符

mysql - 计算列中不同字符的所有出现次数