在MySQL数据库中存储空字符串与NULL?

时间:2011-08-04 09:58:23

标签: database-design null string

我有一个PHP / MySQL应用程序,在某些情况下将“空白”值存储为''(空字符串),在其他情况下存储为NULL s。

这种混合格式在比较时肯定会引起问题,所以我想知道哪一个是更好的存储机制? ''NULL

1 个答案:

答案 0 :(得分:5)

虽然这很令人困惑,但实际上你应该存储null,原因有很多:

  1. 检查null通常比检查大多数数据库中的空字符串更快
  2. Null通常表示“我不知道”,空字符串表示“我知道:它是空的”。它为您提供了更好的语义。