對於MySQL空字符串,這裏有一個非常好的SO字節,這裏是MySQL, better to insert NULL or empty string?,但它並沒有考慮到「統一性」 - 即如果你想在表中只有一個選項(即空字符串或NULL),這應該是什麼?MySQL可以自動將空字符串轉換爲NULL嗎?
我的問題是,我可以讓MySQL自動將空字符串存儲爲NULL嗎?
閱讀前面的所以我通常傾向於存儲NULL,但問題是我有很多PHP表單與可選字段,並且(當留空時)這些返回空字符串。
對於MySQL空字符串,這裏有一個非常好的SO字節,這裏是MySQL, better to insert NULL or empty string?,但它並沒有考慮到「統一性」 - 即如果你想在表中只有一個選項(即空字符串或NULL),這應該是什麼?MySQL可以自動將空字符串轉換爲NULL嗎?
我的問題是,我可以讓MySQL自動將空字符串存儲爲NULL嗎?
閱讀前面的所以我通常傾向於存儲NULL,但問題是我有很多PHP表單與可選字段,並且(當留空時)這些返回空字符串。
您可以NULLIF()
附上的字符串您可以使用這樣的:
NULLIF('test','') --> returns 'test'
NULLIF('' ,'') --> returns NULL
或者到NULLIF你可以設置默認爲NULL,只是沒有一起傳遞空字段。
[NULLIF](http://dev.mysql.com/doc/refman/5.7/en/control-flow-functions.html#function_nullif) – Andrei