這是VARCHAR/TEXT的正確方法嗎?沒有默認值Vs NULL Vs 0在MySQL中作爲文本和整數字段的默認值
在海蒂SQL,我認爲在phpMyAdmin也一樣,我可以從這個hoose:
1.無缺省值
2.自定義(其中預定爲零像 '0')
3. NULL
和療法也時間戳,autoincremnet但這些都不是我現在重要。
那麼,從這3箇中選擇哪一個是使用MySQL處理VARCHAR和TEXT列的好方法呢?
而這對於INT?
下面是截圖啥子我的選擇是:
這是VARCHAR/TEXT的正確方法嗎?沒有默認值Vs NULL Vs 0在MySQL中作爲文本和整數字段的默認值
在海蒂SQL,我認爲在phpMyAdmin也一樣,我可以從這個hoose:
1.無缺省值
2.自定義(其中預定爲零像 '0')
3. NULL
和療法也時間戳,autoincremnet但這些都不是我現在重要。
那麼,從這3箇中選擇哪一個是使用MySQL處理VARCHAR和TEXT列的好方法呢?
而這對於INT?
下面是截圖啥子我的選擇是:
我用大拇指的這個簡單的規則:
我用NOT NULL
任何領域,它會顯示一個邏輯錯誤該系統沒有提供價值。
如果告訴「價值未提供」和「提供的價值,但空」之間的差異,那麼我使用的字段可能會默認爲NULL
。默認爲""
(或0
爲整數字段)是不好的,因爲它阻止你做出區分。
這完全取決於你和你的需求。這取決於您的應用程序是否需要區分未輸入的數據和使用默認值輸入的數據。 – Barmar 2013-03-13 16:16:01
其中一個選項應該比其他選項更一般/抽象。你能幫我選擇哪個選項是未來擴展中最通用和最安全的嗎? – Derfder 2013-03-13 16:19:45
有關此主題的更多討論,請參閱邊欄中的相關問題鏈接。沒有一般的答案。 – Barmar 2013-03-13 16:25:07