簡體   English   中英

MySQL“空”日期是否有值(0001-01-01)

[英]Is there a value for MySQL “null” date (0001-01-01)

在我的數據庫中,有一個不可為空的 Date 列。 當我沒有提供日期時,該值顯示為 0001-01-01。

但是,在客戶端,我需要知道該列何時為空,為此我使用了一個愚蠢的條件:

if (Record.Year == 1)
{
   ///the column is empty, show "N/A" for date
}

沒有比這更優雅的方式嗎(不能更改數據庫列)?

通過選擇定義NOT NULL列,您告訴數據庫,那里總是需要一個(可能是有效的)日期。 如果這不符合您的業務邏輯,那么您只有兩種可能性:

  • 匹配業務邏輯和 DB model ( ALTER TABLE tablename MODIFY COLUMN... )
  • 忍受這場糟糕的比賽:這包括像“魔法值”這樣的拐杖,這很可能會導致更多的麻煩。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM