The following SQL statement fails on SQL Server 2012(SP1) 11.0.3401.0 Version
DECLARE @b VARCHAR(10) = \'12312.2\'
SELECT TRY_CONVERT(DECIMAL(10,2),@b)
Make sure that you have specified on which database you want to run the query on.
use [Database_Name]
go
>>>>query here <<<
go
In my case I had a number of different databases on the server with different compatibility levels.
Check that the database compatibility level for the particular database you are using the function in is set to SQL Server 2012 (110)
under properties/options/compatibility level
for the database.