You use Microsoft SQL Server 2012 to develop a database application.
Your application sends data to an NVARCHAR(MAX) variable named @var.
You need to write a Transact-SQL statement that will find out the success of a cast to a decimal (36,9).
Which code segment should you use?
A.
 BEGIN TRY 
SELECT convert(decimal(36,9), @var) AS Value, ‘True’ AS BadCast END TRY 
BEGIN CATCH 
SELECT convert(decimal(36,9), @var) AS Value, ‘False’ AS BadCast END CATCH
B.
 TRY( 
SELECT convert(decimal(36,9), @var) 
SELECT ‘True’ AS BadCast 
) 
CATCH( 
SELECT ‘False’ AS BadCast 
)
C.
 SELECT 
CASE 
WHEN convert(decimal(36,9), @var) IS NULL 
THEN ‘True’ 
ELSE ‘False’ 
END 
AS BadCast
D.
 SELECT 
IIF(TRY_PARSE(@var AS decimal(36,9)) IS NULL, ‘True’, ‘False’) AS BadCast
Explanation:
http://msdn.microsoft.com/en-us/library/hh213126.aspx