MS SQL Server2012中的TRY_CONVERT函数

以sql2012以前的版本,我们使用CONVERT尝试把某一个值转为某一个数据类型值时,当转换失败时,它会抛出异常。就以这篇为例,http://www.cnblogs.com/insus/archive/2012/08/11/2634131.html 

DECLARE @d NVARCHAR(20= N'2012年08月12日14时36分48秒'
SELECT CONVERT(DATETIME,@d)

 

它会抛出如下异常消息:

Msg 241, Level 16, State 1, Line 2
Conversion failed when converting date and/or time from character string.

 

如今在SQL Server 2012可以使用TRY_CONVERT函数,可转失败时,它获取一个NULL值。

DECLARE @d NVARCHAR(20= N'2012年08月12日14时36分48秒'

SELECT TRY_CONVERT (datetime,@d)

 

执行结果:

 

posted @ 2012-08-11 23:45  Insus.NET  阅读(527)  评论(1编辑  收藏  举报