Ask the Expert

How to insert into SQL Server system tables

Is there a way to insert into SQL Server's system tables. Specifically, I want to mass insert the "description" for certain columns. For example, create_date, will have the same description for all of the tables in the database.

I tried to do the following:

insert into sys.extended_properties(class, class_desc, major_id, minor_id, name, value)
values(1, 'OBJECT_OR_COLUMN', 1973582069,3, 'MS_Description', 'Code used by the
State for reporting purposes');

For which I got the following error:

Msg 259, Level 16, State 1, Line 1
Ad hoc updates to system catalogs are not allowed.

    Requires Free Membership to View

In SQL Server 2005, you cannot enable updates to the systems catalog because they are no longer tables. In order to accomplish what you are doing, you will need to use the sp_addextendedproperty procedure.

This was first published in October 2007

There are Comments. Add yours.

 
TIP: Want to include a code block in your comment? Use <pre> or <code> tags around the desired text. Ex: <code>insert code</code>

REGISTER or login:

Forgot Password?
By submitting you agree to receive email from TechTarget and its partners. If you reside outside of the United States, you consent to having your personal data transferred to and processed in the United States. Privacy
Sort by: OldestNewest

Forgot Password?

No problem! Submit your e-mail address below. We'll send you an email containing your password.

Your password has been sent to: