jitendragarg
jitendragarg

Reputation: 957

Compatibility mode in SQL Server 2014?

The application I am using is written by dinosaurs, using *= and =* operators in sql queries. These queries do joins on 10 or so tables, and I have about 500 such queries. And all I have time for is to upgrade the existing software as-is instead of writing any code. So, updating the query builder functions in all of them is not feasible.

Sadly, I am supposed to upgrade the application to use SQL server 2014, instead of 2005. And in 2014, the backward compatibility for a lot of operators is removed. So, I need to enable some kind of compatibility option in SQL server 2014, if it is available. But, I don't know if there is such a thing, and if it is, how to enable it.

Upvotes: 0

Views: 1469

Answers (1)

jitendragarg
jitendragarg

Reputation: 957

Found a query to find the current compatibility setting. Posting it here, in case someone else needs it.

WITH compatversions AS (
SELECT 65 AS MajorVersion ,'SQL Server 6.5' AS ServerVersion
UNION
SELECT 70,'SQL Server 7.0' 
UNION
SELECT 80 , 'SQL Server 2000' 
UNION 
SELECT 90 , 'SQL Server 2005' 
UNION 
SELECT 100 , 'SQL Server 2008/R2' 
UNION
SELECT 110 , 'SQL Server 2012' 
UNION 
SELECT 120 , 'SQL Server 2014' 
)

SELECT TOP 3 ServerVersion,MajorVersion
        ,ServerVersion + ' ('+ CONVERT(VARCHAR(3),MajorVersion) +')' AS DropDownFormat
    FROM compatversions
    WHERE MajorVersion IN (
        SELECT TOP 3 MajorVersion 
            FROM compatversions
            WHERE MajorVersion <= CONVERT(INT,CAST(@@microsoftversion/ 0x1000000 AS VARCHAR(3)) + '0')
            ORDER BY MajorVersion DESC) 
    ORDER BY MajorVersion ASC;

Apparently, SQL server 2014 supports up to 2008 compatibility.

Upvotes: 1

Related Questions