今天在帮朋友弄一台服务器的时候当我需要删除一个数据库里的用户时,提示如下错误信息:
"选定的用户拥有对象,所以无法除去该用户"
如何解决呢?
我试了网上提供的一些方法都不行,最后还是自己用SQL解决了些问题。
1 在查询分析器里面选中出问题的数据库,然后输入:
Exec sp_configure 'allow updates',1; --允许更新系统表。
RECONFIGURE WITH OVERRIDE
2.运行如下SQL语句:
UPDATE sysobjects SET uid=1; --把数据库里所有的对象都归属到用户dbo
3.执行如下SQL语句:
Exec sp_configure 'allow updates',0; --关闭系统表更新
RECONFIGURE WITH OVERRIDE
4.删除数据库里的用户,再重新建立用户。
从Google中知道了产生此问题的原因如下:
MSSQL备份移植到另一服务器还原时容易遇到的问题……
MSSQL备份移植到另一服务器还原时容易遇到的问题,尤其是从虚拟主机备份回来的数据库在本机还原的问题…
会出现用SQL原来的用户名和密码无效的情况
无法删除某一个系统表
用sa连接做Select时提示表名无效
无法删除原备份数据库中的用户名,提示“因为选定的用户拥有对象,所以无法除去该用户。”
主要原因是原来的备份还原时保留了原用户的信息,导致产生孤立用户……