在SQL Server 2000环境下:
我要写这样一个函数:
stringToDate(@strDate) , @strDate是字符串, 返回smalldatetime类型的值, 1. 如果@strDate能正常转换成日期类型, 则返回转换后的日期类型;
2. 否则转换失败的话, 返回null
上面第二点应该怎么实现? 谢谢.
我要写这样一个函数:
stringToDate(@strDate) , @strDate是字符串, 返回smalldatetime类型的值, 1. 如果@strDate能正常转换成日期类型, 则返回转换后的日期类型;
2. 否则转换失败的话, 返回null
上面第二点应该怎么实现? 谢谢.
确定输入表达式是否为有效的日期。语法
ISDATE ( expression ) 参数
expression一个表达式,将要验证它是否为一个日期。expression 是任何返回 varchar 数据类型的表达式。 返回类型
int注释
如果输入表达式是有效的日期,那么 ISDATE 返回 1;否则,返回 0。下表显示一组示例所得到的返回值。
returns datetime
as
begin
declare @str datetime if isdate(@aa)>0
select @str = convert(datetime,@aa) return @str
end
returns smalldatetime
as
beginif isdate(@str)=1
begin
declare @temp smalldatetime
declare @flag char(10)
set @temp=cast(@str as smalldatetime)
endelse
begin
set @temp=null
end
return @temp
end
select tempdb.dbo.fname('asd')
-----
NULL
select tempdb.dbo.fname('2007-01-02')
----
2007-01-02 00:00:00