欢迎您访问我爱IT技术网,今天小编为你分享的编程技术是:【SQL Server中两种修改对象所有者的方法】,下面是详细的分享!
SQL Server中两种修改对象所有者的方法
一般开发,SQL Server的数据库所有者为dbo.但是为了安全,有时候可能把它换成其它的名称,所有者变换不是很方便.这里列出两种供参考 。
一:
---******************更改权限以添加HHRC用户*************************
--step1 添加第三方用户,如"chn"
--step2 运行sql,加对象权限移至第三方用户
--step3 添加hhrc用户
--step4 运行sql,将对象权限移至hhrc用户
declare @tblname varchar(30)
declare @tblown varchar(50)
declare tbl_cur cursor for
select name from sysobjects where uid='5' and status>=0 and xtype in ('U','P')
--select * from sysusers
open tbl_cur
fetch next from tbl_cur into @tblname
while @@fetch_status=0
begin
set @tblown='web56433.'+@tblname
EXEC sp_changeobjectowner @tblown, 'chn'
print @tblname
fetch next from tbl_cur into @tblname
end
close tbl_cur
deallocate tbl_cur
第二种.
--手动修改系统表
--设备可以手动修改表
exec sp_configure 'allow updates',1
RECONFIGURE WITH OVERRIDE
--更改对象所有者
update sysobjects set uid=1 where uid=5
update sysobjects set uid=5 where uid=1 AND xtype !='S'
update sysobjects set uid=1 where name='syssegments'
update sysobjects set uid=1 where name='sysconstraints'
exec sp_configure 'allow updates',0
RECONFIGURE WITH OVERRIDE
以上所分享的是关于SQL Server中两种修改对象所有者的方法,下面是编辑为你推荐的有价值的用户互动:
相关问题:如何把sql server 2000用户表的所有者修改为dbo图解
答:先打开表设计,看看你要修改的内 容是不是被设为"不可修改",如果不可修改把他改为 "可修改". 另外,使用过滤备件后的对象,不能修改,要在原表中进行修改.就是说后的内容不能进行修改. 铅笔图标表明你当前行是这一行. 修改完成后 >>详细
相关问题:sql server2000如何改变数据库所有者?
答:数据库的默认所有者是sa,如果要改变数据库的所有者可以在企业管理器中数据库下找到这个数据库,数据库下面有个安全项,在里面增加一个用户,再分配好权限,权限可以参照sa用户。除就行了 >>详细
相关问题:SQL2012此数据库没有有效所有者,因此无法安装数据...
答:右键选择数据库属性,然后在左侧菜单中选择文件,然后将所有者更改为sa就OK了。 你试试! >>详细
- 评论列表(网友评论仅供网友表达个人看法,并不表明本站同意其观点或证实其描述)
-
