修改数据库所有者
CREATE???PROCEDURE???dbo.ChangeObjectOwner?????
??@OldOwner???as???NVARCHAR(128),--參數(shù)原所有者?????
??@NewOwner???as???NVARCHAR(128)--參數(shù)新所有者?????
??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)=@OldOwner?????
??order???by???name?????
????
??OPEN?????curObject?????
??FETCH???NEXT???FROM???curObject???INTO???@Name,???@Owner?????
??WHILE(@@FETCH_STATUS=0)?????
??BEGIN???????????????
??if???@Owner=@OldOwner?????
??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?
? exec ? ChangeObjectOwner ? '原所有者','目標(biāo)所有者(test)'????
??@OldOwner???as???NVARCHAR(128),--參數(shù)原所有者?????
??@NewOwner???as???NVARCHAR(128)--參數(shù)新所有者?????
??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)=@OldOwner?????
??order???by???name?????
????
??OPEN?????curObject?????
??FETCH???NEXT???FROM???curObject???INTO???@Name,???@Owner?????
??WHILE(@@FETCH_STATUS=0)?????
??BEGIN???????????????
??if???@Owner=@OldOwner?????
??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?
? exec ? ChangeObjectOwner ? '原所有者','目標(biāo)所有者(test)'????
轉(zhuǎn)載于:https://www.cnblogs.com/cnaspnet/archive/2007/04/09/705648.html
總結(jié)
- 上一篇: 【收集】ADOADO.NET 读取 Or
- 下一篇: MessageDlg