IMZRH的日志

努力成为一个有用的人

导航

Sql Server 中修改系统表的方法总结

Posted on 2010-05-08 11:17  张荣华  阅读(5323)  评论(5编辑  收藏  举报

今天在维护以前代码的时候,需要将一个Sql Server 2008中的数据表列顺序改变一下,本来以为像在Sql Server 2000中一样使用sp_configure存储过程就可解开Sql Server的限制完成修改操作了,但是没有想到在Sql Server 2008中根本不行,所以就上网Google了一下。终于明白从Sql Server 2000以后利用sp_configure来完成修改系统表的方法已经行不通了,在Sql Server 2005/2008中可以在单用户模式下启动DAC来完成,也可以直接在Sql Server Management Studio[SSMS]中更改选项的方式来完成 。

下面将Sql Server 2000、 Sql Server 2005/2008中修改系统表的方法列举出来以方便有需要有朋友 :

一、Sql Server 2000中修改系统表的方法如下:

 

1 EXEC sp_configure 'allow updates', 1
2  RECONFIGURE WITH OVERRIDE;
3  -- do some modification to system tables
4  EXEC sp_configure 'allow updates', 0
5  RECONFIGURE WITH OVERRIDE;

 

 

二、Sql Server 2005/2008中修改系统表的方法一:

  1. 1 用"C:\Program Files\Microsoft SQL Server\MSSQL.1\MSSQL\Binn\sqlservr.exe" -m启动sql server的单用户模式
  2. 2 在打开的SSMS的连接窗口中录入”admin:InstanceName”。
  3. 3 进行系统数据表修改操作。

三、Sql Server 2005/2008修改系统表的方法二:

  1. 1 以普通方式打开SSMS,进入“工具”->“选项”->“设计器”->“表设计器和数据库设计器”,去掉“阻止保存要求重新创建表的更改”选项的勾选 。
  2. 2 在表设计器中完成相应的操作(比如我这里的将列顺序改变),这样在保存时SSMS会自动更改系统表,达利曲线救国的目的。
作者:张荣华
出处:http://zhangronghua.cnblogs.com
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。