sp_add_data_file_recover_suspect_db (Transact-SQL)
當因為檔案群組空間不足 (1105 錯誤) 而無法完成資料庫的復原作業時,將資料檔加入檔案群組中。加入檔案之後,這個預存程序會關閉受到質疑的設定,再完成資料庫的復原。這些參數與 ALTER DATABASE database_name ADD FILE 的參數相同。
語法
sp_add_data_file_recover_suspect_db [ @dbName= ] 'database'
, [ @filegroup = ] 'filegroup_name'
, [ @name = ] 'logical_file_name'
, [ @filename= ] 'os_file_name'
, [ @size = ] 'size'
, [ @maxsize = ] 'max_size'
, [ @filegrowth = ] 'growth_increment'
引數
[ @dbName= ] **'**database '
這是資料庫的名稱。database 是 sysname,沒有預設值。[ @filegroup= ] **'**filegroup_name '
這是檔案要加入其中的檔案群組。filegroup_name 是 nvarchar(260),預設值是 NULL,表示主要檔案。[ @name= ] **'**logical_file_name '
這是 SQL Server 2005 Database Engine 中用來參考檔案的名稱。在伺服器中,這個名稱必須是唯一的。logical_file_name 是 nvarchar(260),沒有預設值。[ @filename= ] **'**os_file_name '
這是作業系統針對檔案所用的路徑和檔案名稱。這個檔案必須在 Database Engine 的執行個體中。os_file_name 是 nvarchar(260),沒有預設值。[ @size= ] **'**size '
這是檔案的初始大小。size 是 nvarchar(20),預設值是 NULL。請指定一個整數,不包括小數點。您可以利用 MB 和 KB 後置詞來指定百萬位元組或千位元組。預設值是 MB。最小值是 512 KB。如果未指定 size,預設值是 1 MB。[ @maxsize= ] **'**max_size '
這是檔案所能成長的大小上限。max_size 是 nvarchar(20),預設值是 NULL。請指定一個整數,不包括小數點。您可以利用 MB 和 KB 後置詞來指定百萬位元組或千位元組。預設值是 MB。如果未指定 max_size,檔案可以成長到磁碟已滿。當磁碟將滿時,Microsoft Windows 應用程式記錄檔會警告管理員。
[ @filegrowth= ] **'**growth_increment '
這是每次需要新空間時,檔案所增加的空間量。growth_increment 是 nvarchar(20),預設值是 NULL。0 值表示不成長。請指定一個整數,不包括小數點。您可以用 MB、KB 或百分比 (%) 來指定這個值。當指定 % 時,成長的遞增是增量發生時之指定的檔案大小百分比。如果指定的數字不含 MB、KB 或 % 後置詞,預設值是 MB。如果 growth_increment 是 NULL,則預設值是 10%,最大值是 64 KB。指定的大小會捨入到最接近 64 KB。
傳回碼值
0 (成功) 或 1 (失敗)
結果集
無
權限
執行權限預設為系統管理員 (sysadmin) 固定伺服器角色的成員。這些權限無法轉讓。
範例
在下列範例中,db1 資料庫在復原期間,因 fg1 檔案群組空間不足 (1105 錯誤) 而標示為受到質疑。
USE master;
GO
EXEC sp_add_data_file_recover_suspect_db db1, fg1, file2,
'C:\Program Files\Microsoft SQL Server\MSSQL10_50.MSSQLSERVER\MSSQL\Data\db1_file2.mdf', '1MB';