Welcome to SqlServer-QA.net Sign in | Join | Help

SQL Server Storage Engine & Tools (SSQA.net)

SQL Server Tools includes storage engine that includes a complete set of graphical tools and command prompt utilities that allow users, programmers, and administrators. SSMS, SSRS, SSIS & SSAS are most commonly used tools.
SQL Server 2005 - Ad hoc updates to system catalogs are "allowed"

Updates to system catalogs are not allowed - a big subject and nothing but opening door to trouble by allowing direct updates or modifications to system tables in SQL Server 2005. If I remember correctly since the days of SQL 6.5 version Microsoft has been discouraging udpates to system tables even though the provision has been enabled. Since SQL Server 2005 version it has been totally removed, which is a good thing for DBAs (especially).

So when you attempt to update the system catalogs then user will get error

Msg 259, Level 16, State 1, Line 1

Ad hoc updates to system catalogs are not allowed.

You feel like this works by using the old trick such as  - sp_configure 'allow updates', 1

This deprecated or rather I use removed feature information has been documented in the Books Online (BOL) stating:

This option is still present in the sp_configure stored procedure, although its functionality is unavailable in Microsoft SQL Server 2005 (the setting has no effect). In SQL Server 2005, direct updates to the system tables are not supported. direct updates to the system tables were never supported in SQL Server.

This has confused few users by assuming that it works even though they are not allowed being the successful completion of SP_CONFIGURE statement. As per note and good feature of this "Catalog updates are still not supported". On the other side using Dedicated Administrator Connection (DAC) this is possible!

Don't get surprised this has been enabled only with this way in order to give a master key to the DBA for the extra carefulness of making or updating catalog changes. Being DBAs are atleast aware of consequences and might test (should test) such system functionality changes.Also note even though by using DAC it is not always possible, in order to complete the update of system catalogs that SQL instance must be started in "single-user" mode, for the updates to be allowed (using the -m flag). By itself, DAC will allow you to see system tables, but to update them, you also need to have the server started in single-user mode.

Again, a piece of advice is if you perform system catalogs update you might be risking the support contract from Microsoft, unless otherwise stated only if Microsoft suggests to perform so you are safe to retain the support contract.

 

Posted: Tuesday, April 24, 2007 10:59 AM by SQL Master

Comments

SQL Server Storage Engine & Tools (SSQA.net) said:

Recently I have received an email about unable to drop schemas that are adopted in the database design

# April 22, 2008 2:22 AM
Anonymous comments are disabled