博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

更换SQL对象属主的方法

Posted on 2005-11-11 07:19    阅读(761)  评论(0编辑  收藏  举报
        为了安全我开发的一个数据库未用SA帐户,而用了一个为“wwl”的帐户。但是当我重装系统(Windows 2003)后,还原的数据库却不能用“wwl”登陆,也删不掉这个帐户(很明显 “wwl”拥有对象不能删除)。最后我用了一下方法得以解决:

1。新建帐户“lei”

2。转换身份(用下面的脚本)。

 1declare @tbname varchar(30)
 2declare @tbown varchar(50)
 3declare tb_cur cursor for 
 4select name from sysobjects where uid='6' and status>=0 and  xtype in ('U','P')  
 5--select * from sysusers                      6为“wwl”的UID
 6open tb_cur
 7fetch next from tb_cur into @tbname
 8while @@fetch_status=0
 9begin
10set @tbown='wwl.'+@tbname
11EXEC sp_changeobjectowner @tbown'lei'
12print @tbname
13fetch next from tb_cur into @tbname
14end
15close tb_cur
16deallocate tb_cur
17


3。将“wwl”添加到哪个数据库。

4。执行2 改属主为“wwl”。