SQL Server 2005 修改系统表

在SQL Server 2005中, 要修改系统表, 需要以下步骤:

 

首先, 需要以单用户模式启动SQL Server, 脚本如下:

sqlservr -s <SQLInstanceName> -m (其中, 将真正的数据库实例名替换<SQLInstanceName>)

 

注意, 参数-s及-m要注意大小写, 正确应该都是小写, 全都用大写会报错, 其它情况没试过, 不知道为什么.

 

其次, 以以下脚本连接数据库

sqlcmd -E -S <ComputerName>\<SQLInstanceName> -A (其中, 将真正的电脑名替换<ComputerName>, 真正的数据库实例名替换<SQLInstanceName>)

 

若想用图形界面, 可以以Management Studio打开SQL脚本文件, 注意, 此时Management Studio不可连接上数据库, 必须在打开SQL脚本时连接, 并且在服务器名一栏中必须按如下方式填写:

ADMIN:<ComputerName>\<SQLInstanceName> (其中, 将真正的电脑名替换<ComputerName>, 真正的数据库实例名替换<SQLInstanceName>)

注: 此处<ComputerName>不可用IP代替

 

否则无法浏览系统表

 

此时, 可以修改系统表了.

 

可以用以下脚本查找系统表:

SELECT * FROM sysobjects
 WHERE xtype = 'S'
 ORDER BY name

 

系统表的详细信息可参考

http://msdn.microsoft.com/en-us/library/ms179503.aspx

 

此方法在Window 2003 64bit SP2 + SQL 2005 Standard 64bit SP2 上测试通过

posted on 2010-03-31 21:15  黑暗之眼  阅读(386)  评论(0)    收藏  举报