Asp教程

通过asp实例结合结合ACCESS,MSSQL来更好的深入Asp学习 - 爬坡者

« CSS控制输入框input悬停样式让access自动编号重新开始 »

MSSQL下批量修改数据表的所有者

/*
brief: 改变数据库所有对象的所有者
author: 吴尔平
date: 2005/12/19
*/

declare @owner varchar(255)
set @owner = 'dbo'

declare @objectname varchar(255)
declare @uid int
declare object_cursor cursor for select [name],uid from sysobjects
where OBJECTPROPERTY (id, 'IsMSShipped') = 0
and (xtype like '%') -- 如果要指定对象的类型,参考 Transact-SQL 帮助-> sysobjects-> xtype
open object_cursor
fetch next from object_cursor into @objectname, @uid
while(@@fetch_status=0)
begin
declare @uidName varchar(255)
select @uidName = [name] from dbo.sysusers where uid = @uid
if @uidName <> @owner
begin
--生成 '所有者.对象名' 格式的字符串
set @objectname = @uidName + '.' + @objectname
--改变对象所有者
exec sp_changeobjectowner @objectname, @owner
end

fetch next from object_cursor into @objectname, @uid
end
close object_cursor
deallocate object_cursor
go

发表评论:

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。

最新评论及回复

最近发表

Powered By Z-Blog 1.8 Spirit Build 80710

Copyright 2007-2008 papozhe.com [asp教程] All Rights Reserved.
浙ICP备07030537号
免责申明:所有文章除特别声明,均来自网上,主要为学习用!内容仅供参考,版权归原作者。如侵犯您利益,请来信告知.
Email:papozhe$Gmail.com QQ:76336503