若要檢視英文版的文章,請選取 [原文] 核取方塊。您也可以將滑鼠指標移到文字上,即可在快顯視窗顯示英文原文。
譯文
原文

sp_changedbowner (Transact-SQL)

變更目前資料庫的擁有者。

重要事項 重要事項

未來的 Microsoft SQL Server 版本將移除這項功能。請避免在新的開發工作中使用這項功能,並規劃修改目前使用這項功能的應用程式。 請改用 ALTER AUTHORIZATION

主題連結圖示 Transact-SQL 語法慣例

sp_changedbowner [ @loginame = ] 'login'
     [ , [ @map = ] remap_alias_flag ]

[ @loginame= ] 'login'

這是目前資料庫新擁有者的登入識別碼。 loginsysname,沒有預設值。 login 必須是現有的 SQL Server 登入或 Windows 使用者。 如果 login 已經有可透過資料庫中現有使用者安全性帳戶來存取資料庫的權限,就不能成為目前資料庫的擁有者。 若要防止這種情況,請先卸除目前資料庫的使用者。

[ @map= ] remap_alias_flag

remap_alias_flag 參數已被取代,因為已經從 SQL Server 中移除登入別名。 使用 remap_alias_flag 參數不會產生錯誤,但是沒有任何作用。

0 (成功) 或 1 (失敗)

在 sp_changedbowner 執行之後,新擁有者在資料庫中就成為 dbo 使用者。 dbo 具有隱含權限,可以執行資料庫中所有的活動。

master、model 或 tempdb 系統資料庫的擁有者不能變更。

若要顯示有效的 login 值清單,請執行 sp_helplogins 預存程序。

只使用 login 參數來執行 sp_changedbowner 會將資料庫擁有權變更為 login

不過,您也可以利用 ALTER AUTHORIZATION 陳述式來變更任何安全性實體的擁有者。 如需詳細資訊,請參閱<ALTER AUTHORIZATION (Transact-SQL)>。

需要資料庫的 TAKE OWNERSHIP 權限。 如果新擁有者在資料庫有對應的使用者,則需要登入的 IMPERSONATE 權限,否則就需要伺服器的 CONTROL SERVER 權限。

下列範例會讓登入 Albert 成為目前資料庫的擁有者。

EXEC sp_changedbowner 'Albert'

社群新增項目

新增
顯示: