Thursday, March 29, 2012

Can i host a SQL2005 EE DB on SQL2000 engine ?

Hi,
I'd like to host a small website created using VS2005 EE with a company that offers just SQL2000 DB support.
My question, can i use the DB created by VS site manager as a DB to the site, if not, is there any alternatives.
Thanks.

hi,

SQL Server 2005 databases can not be attached/managed/used by SQL Server 2000 edtions.. the internal structures and metadata are different.. you can obvioulsy upgrade a SQL Server 2000 database to SQL Server 2005, but not the contrary..

you can "handle" that scripting out the database objects (obviously only the SQL Server 2000 supported ones) cleaning out eventual 2005 features and recreate the database on the SQL Server 2000 instance running those scripts... you can then BCP out (and "in", in the destination instance) eventual pre-loaded required data..

or, you can use the wizards provided by SSIS (not available with SQL Server Express and SQL Server Management Studio Express, but with full SQL Server 2005 edition only) to to "copy" the required database(s) to the 2000 edition instance..

regards

|||

The SQL team just released a Database Publishing Wizard that might meet your needs. The wizard makes it easy to script out your development database, even directly from VS. You can then run the script on your hosted site to recreate the database and the data. You should be able to run the script on both 2005 and 2000 systems.

You can find a tutorial on using the wizard in this blog post along with a link to where you can download the wizard.

Mike

|||

Hi all,

There's an easier way. What you can do it run the sp_dbcmptlevel stored procedure and set the version of your database to 80 (i.e. SQL Server 2000) You can then use this db (obviously without any SQL Server 2005 features) on a SQL Server 2000 engine. Here's more about the sp_dbcmptlevel stored procedure :

http://msdn2.microsoft.com/en-us/library/ms178653.aspx

Regards,

Amol A. Vaidya.

|||

hi Amol,

nope, this is not an option... you can not move a SQL Server 2005 database to a SQL Server 2000 instance even if modifying the compatibility level...

regards

|||

Hi Andrea,

Yeah you are right on that. The formats for SQL Server 2005 Database are different from that of SQL Server 2000 database and sp_dbcmptlevel does not downgrade to that format. I mixed this up with the other-way-round scenario that you can use a SQL Server 2000 database as-is (i.e. locked up with formats and features restricted to SQL Server 2000) by setting the sp_dbcmptlevel to 80 on a SQL Server 2005 Engine but not the other way round.

Thanks for pointing that out,

Amol.

|||

Hi Amol,

I think you still might be confused about the dbcmptlevel. Setting it to 80 has nothing to do with file format ever. When you attach a SQL 2000 database to SQL 2005 it is always converted to the 2005 file format. The dbcmptlevel will cause SQL 2005 to run commands as if it were SQL 2000, but the file format is always upgraded.

Mike

sql

No comments:

Post a Comment