更改SQL Server表的所屬用戶2方案
作者:佚名
以下的文章主要描述的是正確更改SQL Server表的所屬用戶的2個實際操作方法,以及對其在實際操作中要用到的實際應(yīng)用代碼的描述。
文章介紹的是正確更改SQL Server表的所屬用戶的2個實際操作方法,大家在實際操作中可能會經(jīng)常碰到一個備份還原到另外一臺機器結(jié)果導(dǎo)致所有的表都不能打開了,原因是建表的時候采用了當(dāng)時的數(shù)據(jù)庫用戶……
更改某個表
- exec sp_changeobjectowner 'tablename','dbo'
存儲更改全部SQL Server表
- CREATE PROCEDURE dbo.User_ChangeObjectOwnerBatch
- @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)=@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
- -- select @name,@NewOwner,@OldOwner
- FETCH NEXT FROM curObject INTO @Name, @Owner
- END
- close curObject
- deallocate curObject
- GO
以上的相關(guān)內(nèi)容就是對更改SQL Server表的所屬用戶的兩個方法的介紹,望你能有所收獲。
【編輯推薦】
責(zé)任編輯:佚名
來源:
天極網(wǎng)