如何将默认空值设置为sql server 2000中的日期字段?

时间:2009-10-19 10:55:42

标签: sql-server-2000

如果包含日期值的参数为null,如何将默认空值设置为表中的日期字段?

4 个答案:

答案 0 :(得分:2)

确保你真的传入NULL,我认为你传入一个空字符串。如果传入空字符串,则会得到您引用的1900-01-01 00:00:00.000值。 Null将为null,不会更改为日期。

试试这个测试代码:

declare @x datetime

select 'is null', @x

set @x=''

select 'is empty string', @x

输出:

------- -----------------------
is null NULL

(1 row(s) affected)


--------------- -----------------------
is empty string 1900-01-01 00:00:00.000

(1 row(s) affected)

答案 1 :(得分:0)

您是指在传入的日期参数为NULL时如何在存储过程中设置特定的默认值?

将您的日期参数标记为:

@DOB DATETIME = '01 / 01/1900'

如果将@DOB传递为NULL,则@DOB参数将插入'01 / 01/1900'。

答案 2 :(得分:0)

尝试:

coalesce(param, getdate())
存储过程中的

或在列上定义默认值

ALTER TABLE dbo.Mitarbeiter ADD CONSTRAINT
DF_Mitarbeiter_Geburtstag DEFAULT getdate() FOR Geburtstag

答案 3 :(得分:0)

我不是sql server 2000的专家。

我有一个链接希望这会对你有所帮助:)。

http://www.c-sharpcorner.com/UploadFile/sd_patel/EnterNullValuesForDateTime11222005015742AM/EnterNullValuesForDateTime.aspx