declare @dDate datetime
select @dDate =null
print @ddate
if @dDate is null select @dDate ='2004-1-1'
print @dDate --测试:
01  1 2004 12:00AM

解决方案 »

  1.   

    判斷日期要用 isdate()函數
      

  2.   

    定义它是日期用ISDATE()就返回永远是1
    declare @dDate datetime
    select @dDate =''
    if   isdate(@dDate)=0   select @dDate ='2004-1-1'
    print @dDate
    结果: 
    Jan  1 1900 12:00AM
      

  3.   

    用varchar型
    declare @dDate varchar(10)
    select @dDate =''
    if len(@dDate)=0 select @dDate ='2004-1-1'
    print @dDate --返回 2004-1-1
      

  4.   

    或:
    declare @dDate datetime
    select @dDate =null
    if @dDate is null  select @dDate ='2004-1-1'
    print  convert(varchar(10),@dDate ,120)
    --返回 2004-1-1
      

  5.   

    各位高人:定义为日期,传一个空并不是NULL就不能判断了吗?