sp_certify_removable (Transact-SQL)
適用於:SQL Server
確認資料庫已正確設定為在卸除式媒體上散發,並將任何問題回報給使用者。
重要
SQL Server 的未來版本將移除此功能。 請避免在新的開發工作中使用這項功能,並規劃修改目前使用這項功能的應用程式。 請改用 CREATE DATABASE 。
語法
sp_certify_removable
[ @dbname = ] N'dbname'
[ , [ @autofix = ] N'autofix' ]
[ ; ]
引數
[ @dbname = ] N'dbname'
指定要驗證的資料庫。 @dbname為 sysname。
[ @autofix = ] N'autofix'
將資料庫和所有資料庫對象的擁有權授與系統管理員,並卸除任何使用者建立的資料庫使用者和非默認許可權。 @autofix為 nvarchar(4),預設值為 NULL
。
傳回碼值
0
(成功) 或 1
(失敗)。
備註
如果資料庫已正確設定, sp_certify_removable
請執行下列步驟:
- 離線設定資料庫,以便複製檔案。
- 更新所有數據表的統計數據,並報告任何擁有權或用戶問題
- 將數據檔群組標示為唯讀,以便將這些檔案複製到唯讀媒體。
系統管理員必須是資料庫和所有資料庫對象的擁有者。 系統管理員是執行 SQL Server 之所有伺服器上的已知使用者,且預期會在資料庫稍後散發並安裝時存在。
如果您執行 sp_certify_removable
時沒有 AUTO
值,它會傳回下列任何條件的相關信息:
- 系統管理員不是資料庫擁有者。
- 任何使用者建立的使用者都存在。
- 系統管理員不會擁有資料庫中的所有物件。
- 已授與非預設許可權。
您可以透過下列方式更正這些條件:
- 使用 SQL Server 工具和程式,然後再次執行
sp_certify_removable
。 - 使用
AUTO
值執行sp_certify_removable
。
此預存程式只會檢查用戶和用戶權力。 您可以將群組新增至資料庫,並將許可權授與這些群組。 如需詳細資訊,請參閱 GRANT。
權限
執行許可權僅限於系統管理員固定伺服器角色的成員。
範例
下列範例會 inventory
認證資料庫已準備好移除。
EXEC sp_certify_removable inventory, AUTO;