程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> SqlServer數據庫 >> 關於SqlServer >> 把sql server所有表的所有者改為dbo

把sql server所有表的所有者改為dbo

編輯:關於SqlServer


--執行這個語句,就可以把當前庫的所有表的所有者改為dbo
exec sp_msforeachtable 'sp_changeobjectowner ''?'', ''dbo'''

--如果是要用戶表/存儲過程/視圖/觸發器/自定義函數一齊改,則用游標(不要理會錯誤提示)
declare tb cursor local for
select 'sp_changeobjectowner ''['+replace(user_name(uid),']',']]')+'].['+replace(name,']',']]')+']'',''dbo'''
from sysobjects
where xtype in('U','V','P','TR','FN','IF','TF') and status>=0
open tb
declare @s nvarchar(4000)
fetch tb into @s
while @@fetch_status=0
begin
exec(@s)
fetch tb into @s
end
close tb
deallocate tb
go

以SA登陸查詢分析器 ,選中你要的數據庫
執行存儲過程
執行exec Changename ‘原所有者','dbo'
或exec Changename ‘dbo,'數據庫所有者'

修改MS SQL表用戶屬性的命令

可以用exec sp_changeobjectowner ‘dataname.數據表','dbo' 把表或存儲過程中的所有者都改成dbo

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved