sql server出现选定的用户拥有对象而无法删除的处理方法
转载:http://www.im286.com/archiver/tid-1993720.html
方法一
首先你需要做的第一件事
企业管理器-〉选择服务器-〉属性-〉服务器设置-〉挑上允许对系统目录。。。-〉确定
第二步
找到你的数据库找到sysusers表那你以前的用户删除
第三步回去吧属性值改回来
第四部重建用户即可
方法二
对mssql出现选定的用户拥有对象而无法删除的处理
--将下面的代码在查询分析器中执行,修改修改库名
use 你的库名
go
declare tb cursor local
for
select 'sp_changeobjectowner '
+quotename(
+quotename(user_name(uid))
+'.'+quotename(name),'''')
+',''dbo'''
from sysobjects
where objectproperty(id,N'isusertable')=1
and uid<>user_id('dbo')
declare @s nvarchar(4000)
open tb
fetch tb into @s
while @@fetch_status=0
begin
exec(@s)
fetch tb into @s
end
close tb
deallocate tb
MSSQL备份移植到另一服务器还原时容易遇到的问题……
MSSQL备份移植到另一服务器还原时容易遇到的问题,尤其是从虚拟主机备份回来的数据库在本机还原的问题…
会出现用SQL原来的用户名和密码无效的情况
无法删除某一个系统表
用sa连接做Select时提示表名无效
无法删除原备份数据库中的用户名,提示“因为选定的用户拥有对象,所以无法除去该用户。”
主要原因是原来的备份还原时保留了原用户的信息,导致产生孤立用户……
这时候需要用sp_changeobjectowner 将对象的所有关系更改到另一个用户上,既更改数据库对象的所有者。
格式:
sp_changeobjectowner [@objectname =] 'object', [@newowner =] 'owner'
例子 在查询分析器中录入:
sp_changeobjectowner 'web102101.tablename', 'dbo'
依次将所有的所属用户都改为dbo,然后现在数据库的用户中把孤立用户删除,再到安全中删除登陆信息。
并可以再依次创建新用户了
2007-5-28 08:23 CSharp
sql server出现选定的用户拥有对象而无法删除时原因有:
1.表所有者非dbo 解决方法:右击 '表' ->'设计表'->点工具栏中的"属性"->在所有者为改为 'dbo',完成
2.存储过程所有者非dbo 解决方法: 打开存储过程,copy内容,删除存储过程,新建存储过程,粘贴内容,完成
如果还有问题,可联系 QQ 1624110
版权声明:
作者:Kiyo
链接:https://www.wkiyo.cn/html/2008-03/i551.html
来源:Kiyo's space
文章版权归作者所有,未经允许请勿转载。
共有 0 条评论