【问题标题】:Can MySQL automatically convert empty strings to NULL?MySQL可以自动将空字符串转换为NULL吗?
【发布时间】:2012-11-03 14:01:01
【问题描述】:

这里有一个很好的关于 MySQL 空字符串与 NULL 的 SO,MySQL, better to insert NULL or empty string?,但是它没有考虑“一致性” - 即如果你想在你的表中只有一个选择(即空字符串或NULL),应该是哪个?

我的问题是,我可以让 MySQL 自动将空字符串存储为 NULL 吗?

在阅读了之前的 SO 之后,我通常倾向于存储 NULL,但问题是我有很多带有可选字段的 PHP 表单,并且(当留空时)这些返回空字符串。

【问题讨论】:

    标签: php mysql forms sql-null


    【解决方案1】:

    作为 NULLIF 的替代方法,您可以将默认值设置为 NULL 并且不传递空字段。

    【讨论】:

      【解决方案2】:

      你可以用NULLIF()括住你的字符串

      你可以这样使用它:

      NULLIF('test','') --> returns 'test'
      NULLIF(''    ,'') --> returns NULL
      

      【讨论】:

      • 如果NULLIF(string1, string2)的第一个和第二个参数匹配,则返回NULL
      猜你喜欢
      • 2022-01-08
      • 1970-01-01
      • 1970-01-01
      • 2015-03-19
      • 1970-01-01
      • 2020-06-20
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多