日期:2014-05-17  浏览次数:20510 次

sql2000企业管理器-设计表 报错
在sql2000的企业管理器里面,只有运行的新库,所有的表,在点击右键选择设计的时候,都报这个错误。
 


不知道为什么,进行其他操作如查看返回数据等,是没问题的。这个是什么问题啊。

------最佳解决方案--------------------
你用程序连的?
------其他解决方案--------------------
视图 里有无效的列,alter 修改下吧
------其他解决方案--------------------
哦  我看下, 我是在sql2000的企业管理器选中表,右键,表设计,出来的这个页面。


视图中么。怎么所有表-表设计都报错呢。
------其他解决方案--------------------
可能1:
進程(Process)繁忙或鎖住了
 建議用T-SQL語句,不要用SQL SERVER2000管理器的設計界面,太慢了(尤其在服務器忙的時候)

可能2:
--可能是表或数据库损坏,先用下面的语句,检查/修复数据库/并整理索引碎片(需要比较长的时间,请在系统空闲时进行此工作)   
     
   USE   MASTER   
   GO   
     
   sp_dboption   '你的数据库名',   'single   user',   'true'   
   Go   
     
   DBCC   CHECKDB('你的数据库名',   REPAIR_REBUILD)     
   Go   
     
   USE   你的数据库名   
   go   
     
   exec   sp_msforeachtable   'DBCC   CHECKTABLE(''?'',REPAIR_REBUILD)'   
   exec   sp_msforeachtable   'DBCC   DBREINDEX(''?'')'   
   go   
     
   sp_dboption   '你的数据库名',   'single   user',   'false'   
   Go   

------其他解决方案--------------------
引用:
可能1:
進程(Process)繁忙或鎖住了
 建議用T-SQL語句,不要用SQL SERVER2000管理器的設計界面,太慢了(尤其在服務器忙的時候)

可能2:
--可能是表或数据库损坏,先用下面的语句,检查/修复数据库/并整理索引碎片(需要比较长的时间,请在系统空闲时进行此工作)   
     
   USE   MASTER   
   GO   
     
   ……



如果锁住了,我该怎么办呢。怎么处理呢。

我这只是我自己的电脑上,不是服务器上在用的。我的开发测试数据库。
------其他解决方案--------------------
找出那个锁了,然后kill掉,
select * from sys.sysprocesses where blocked<>0这个可以查到有哪些锁住了,然后用sp_who spid看看是什么东西来的。
------其他解决方案--------------------
没有锁的,读取的数据为空。
------其他解决方案--------------------
那就是第二个可能
------其他解决方案--------------------
服务器: 消息 15011,级别 16,状态 1,过程 sp_dboption,行 129
数据库选项 'single   user' 不存在。

服务器: 消息 7919,级别 16,状态 2,行 2
未处理修复语句。数据库需要处于单用户模式下。
DBCC 执行完毕。如果 DBCC 输出了错误信息,请与系统管理员联系。
服务器: 消息 7919,级别 16,状态 3,行 1
未处理修复语句。数据库需要处于单用户模式下。
DBCC 执行完毕。如果 DBCC 输出了错误信息,请与系统管理员联系。
....

下面还好多这种错误提示。
------其他解决方案--------------------