Please start any new threads on our new site at https://forums.sqlteam.com. We've got lots of great SQL Server experts to answer whatever question you can come up with.

 All Forums
 SQL Server 2008 Forums
 SQL Server Administration (2008)
 Compatibility Mode

Author  Topic 

icw
Constraint Violating Yak Guru

378 Posts

Posted - 2010-08-18 : 16:24:28
Hi I don't really understand what Compatibility mode is for, can anyone point me to a simple explananation.

For example I restored a SQL 2000 database to a SQL server 2008.
Th ecompatibility mode was automatically set to sql 2000.
What difference would it make if I set it to SQL 2008 compatibility

icw
Constraint Violating Yak Guru

378 Posts

Posted - 2010-08-18 : 16:30:17
just done a bit of research. its so functions and queries that are not supported in sql 2008 can be supported ..right?
Go to Top of Page

Kristen
Test

22859 Posts

Posted - 2010-08-18 : 17:47:17
Well .. kinda ...

You have an application that works fine in SQL2005.

You need to move it to a server running SQL2008. To minimise your migration effort you run it in "SQL2005 compatibility mode" on your shiny new SQL2008 server.

Now the clincher for me is "Why would you choose to do this?"

The obvious answer is because you are not planning to do any testing. Well good luck with that one!

If you move from SQL2005 to SQL2008 you had better test that your application works Just Fine. Maybe there will be fewer things to fix if you stick with the old Compatibility Mode. But ... my view is, if you have to do all that testing anyway why not also change to the latest compatibility mode? then you know that your application works fine with that mode, and you can then take advantage of any new features you choose to, and you've future-proofed yourself for a good while longer too ...
Go to Top of Page

russell
Pyro-ma-ni-yak

5072 Posts

Posted - 2010-08-18 : 19:07:10
The reason is that many features supported in earlier versions are no longer supported.

Start here: http://msdn.microsoft.com/en-us/library/ms143729(v=SQL.100).aspx

Then look here too:
http://blogs.technet.com/b/andrew/archive/2008/05/27/deprecated-features-in-sql-server-2008.aspx

if you flip the compatibility mode to 10, you might find things don't work.

As Kristen said...test, test, test. Then test some more.
Go to Top of Page

icw
Constraint Violating Yak Guru

378 Posts

Posted - 2010-08-19 : 04:39:47
thanks a lot
Go to Top of Page

GilaMonster
Master Smack Fu Yak Hacker

4507 Posts

Posted - 2010-08-19 : 10:32:48
Do bear in mind that some behaviour changes apply regardless of the compat level. I don't have a handy example, but I do recall from when I was upgrading a DB to 2005 some queries worked on SQL 2000 but not on 2005, even in compat mode 80.

--
Gail Shaw
SQL Server MVP
Go to Top of Page

Kristen
Test

22859 Posts

Posted - 2010-08-19 : 11:10:41
"some queries worked on SQL 2000 but not on 2005, even in compat mode 80."

That's my key point - as a full regression test is needed anyway then its no harder to change to latest Compatibility Mode (assuming the incompatibilities are not too onerous to fix!)

EDIT: @Gail: That doesn't read very well, sorry. I only mean that your point reinforces my earlier point.
Go to Top of Page
   

- Advertisement -