--功能說明:成批更改數據庫所有者的對象 --作者:不詳 --用法:exec changeobjectowner 'nmkspro','dbo' --即可將所有nmkspro所有者的對象改為dbo所有 --運行成功后將提示:"注意: 更改對象名的任一部分都可能破壞腳本和存儲過程。" create procedure dbo.changeobjectowner @oldowner as nvarchar(128),--參數原所有者 @newowner as nvarchar(128)--參數新所有者 as
declare @name as nvarchar(128) declare @owner as nvarchar(128) declare @ownername as nvarchar(128)
declare curobject cursor for select 'name' = name, 'owner' = user_name(uid) from sysobjects where user_name(uid)[email protected] order by name
open curobject fetch next from curobject into @name, @owner while(@@fetch_status=0) begin if @[email protected] begin set @ownername = @oldowner + '.' + rtrim(@name) exec sp_changeobjectowner @ownername, @newowner end
fetch next from curobject into @name, @owner end
close curobject deallocate curobject go 國內最大的酷站演示中心!