sp_certify_removable (Transact-SQL)
確認已正確設定資料庫的抽取式媒體散發作業,並向使用者報告任何問題。
重要事項 |
---|
未來的 Microsoft SQL Server 版本將移除這項功能。請避免在新的開發工作中使用這項功能,並規劃修改目前使用這項功能的應用程式。我們建議您改用 CREATE DATABASE。 |
適用於:SQL Server (SQL Server 2008 至目前版本)。 |
語法
sp_certify_removable [ @dbname= ] 'dbname'
[ , [ @autofix = ] 'auto' ]
引數
[ @dbname=] 'dbname'
指定要驗證的資料庫。 dbname 是 sysname。[ @autofix=] 'auto'
將資料庫和所有資料庫物件的擁有權提供給系統管理員,並卸除任何使用者建立之資料庫的使用者和非預設權限。 auto 是 nvarchar(4),預設值是 NULL。
傳回碼值
0 (成功) 或 1 (失敗)
備註
如果已正確設定資料庫,sp_certify_removable 會執行下列動作:
將資料庫設為離線,以便複製檔案。
更新所有資料表的統計資料,以及報告任何擁有權或使用者問題。
將資料檔案群組標示為唯讀,以便將這些檔案複製到唯讀媒體中。
系統管理員必須是資料庫和所有資料庫物件的擁有者。 系統管理員是正在執行 Microsoft SQL Server 且可預期稍後散發和安裝資料庫時,將會存在的所有伺服器中的已知使用者。
如果您執行未設定 auto 值的 sp_certify_removable,且它傳回下列任何狀況的相關資訊:
系統管理員不是資料庫擁有者。
有使用者建立的使用者存在。
系統管理員並未擁有資料庫中的所有物件。
授與了非預設的權限。
您可以利用下列方式來更正這些狀況:
使用 SQL Server 工具和程序,再重新執行 sp_certify_removable。
只執行設定了 auto 值的 sp_certify_removable。
請注意,這個預存程序只會檢查使用者和使用者權限。 您可以將群組加入資料庫中,以及將權限授與這些群組。 如需詳細資訊,請參閱<GRANT (Transact-SQL)>。
權限
執行權限僅限於系統管理員 (sysadmin) 固定伺服器角色的成員。
範例
下列範例會證明 inventory 資料庫已完成移除的準備。
EXEC sp_certify_removable inventory, AUTO;
請參閱
參考
sp_create_removable (Transact-SQL)