2012-09-05 226 views
0

我有一個數據庫,其中有一列名爲START_TS類型(日期時間,非空)。 我在java中寫了一個程序,我想在該列中插入一個空值,但其值爲
'1900-01-01 00:00:00.000'。如何在SQL數據庫日期列中插入空白值?

statement.executeUpdate("insert into tableName(START_TS) values(CAST(START_TS as varchar(100)))"); 

請建議我可以在那裏插入空白值的鑄造機制。

謝謝

+1

如果列約束爲NULL,則插入NULL。 insert into tableName(START_TS)values(NULL) – adatapost

+1

在不能插入空格的情況下可以使用null。 –

+0

它不能完成,你可以添加null,如果你刪除不空null的約束,否則我不認爲有任何選項 –

回答

1

如果您使用MYSQL語法似乎指向;你可以做到以下幾點:

ALLOW_INVALID_DATES

不要執行日期滿檢查。僅檢查月份是否在 範圍從1到12,日期範圍是1到31.此 對於在三個不同領域獲得年份,月份,日期和日期的Web應用程序非常方便,而您想要精確地存儲用戶插入的 (沒有日期驗證)。此模式適用於日期 和DATETIME列。它不適用TIMESTAMP列,其中 總是需要有效的日期。

該模式在MySQL 5.0.2中實現。在5.0.2之前,這是 默認的MySQL日期處理模式。從5.0.2開始,服務器要求 月份和日期值是合法的,而不是僅在1到 12和1到31的範圍內。禁用嚴格模式後,無效日期 (如'2004-04-31')被轉換爲'0000-00-00',並且生成警告 。啓用嚴格模式後,無效日期會生成錯誤。 要允許這種日期,請啓用ALLOW_INVALID_DATES。

然而正如每個人在評論中所說的那樣,在數據類型爲DATETIME的字段中不可能粘貼「」。