sp_add_data_file_recover_suspect_db (Transact-SQL)

適用対象:SQL Server

ファイル グループの領域が不足しているためにデータベースで復旧が完了できない場合に、データ ファイルをファイル グループに追加します (エラー 1105)。 ファイルが追加された後、このストアド プロシージャは未復旧の設定をオフにして、データベースの復旧を完了します。 パラメーターは次の場合 ALTER DATABASE <database_name> ADD FILEと同じです。

Transact-SQL 構文表記規則

構文

sp_add_data_file_recover_suspect_db [ @dbName = ] 'database'
    , [ @filegroup = ] N'filegroup_name'
    , [ @name = ] N'logical_file_name'
    , [ @filename = ] N'os_file_name'
    , [ @size = ] N'size'
    , [ @maxsize = ] N'max_size'
    , [ @filegrowth = ] N'growth_increment'
[ ; ]

引数

[ @dbName = ] 'database'

データベースの名前です。 @dbNameは sysname で、既定値はありません。

[ @filegroup = ] N'filegroup_name'

ファイルを追加するファイル グループ。 @filegroupは nvarchar(260) で、既定値はNULLプライマリ ファイルを示します。

[ @name = ] N'logical_file_name'

ファイルを参照するために SQL Server で使用される名前。 サーバー内で一意な名前を指定する必要があります。 @nameは nvarchar(260) で、既定値はありません。

[ @filename = ] N'os_file_name'

ファイルのオペレーティング システムによって使用されるパスとファイル名。 ファイルは、データベース エンジンのインスタンス上に存在する必要があります。 @filenameは nvarchar(260) で、既定値はありません。

[ @size = ] N'size'

ファイルの初期サイズ。 @sizeは nvarchar(20) で、既定値は NULL. 整数を指定します。10 進数を含めないでください。 サフィックス MBKB サフィックスを使用して、メガバイトまたはキロバイトを指定できます。 既定値は、MB です。 最小値は 512 KB (キロバイト)です。 @sizeが指定されていない場合、既定値は 1 MB (メガバイト)です。

[ @maxsize = ] N'max_size'

ファイルを拡大できる最大サイズ。 @maxsizeは nvarchar(20) で、既定値は NULL. 整数を指定します。10 進数を含めないでください。 サフィックス MBKB サフィックスを使用して、メガバイトまたはキロバイトを指定できます。 既定値は、MB です。

@maxsizeが指定されていない場合、ファイルはディスクがいっぱいになるまで拡張されます。 ディスクがいっぱいになると、Microsoft Windows アプリケーション ログによって管理者に警告が表示されます。

[ @filegrowth = ] N'growth_increment'

新しい領域が必要になるたびにファイルに追加される領域の量。 @filegrowthは nvarchar(20) で、既定値は NULL. 値は 0 増加がないことを示します。 整数を指定します。10 進数を含めないでください。 値は、またはパーセント (%) でMBKB指定できます。 この値を指定すると % 、増加の増分は、増分が発生した時点でのファイルのサイズに対する指定された割合になります。 、、またはサフィックスを指定せずに数値をMBKB指定した場合、既定値は MB.%

@filegrowthが NULL の場合、既定値は 10%、最小値は 64 KB. 指定されたサイズは、最も近い 64 KB 単位の値に切り上げられます。

リターン コードの値

0 (成功) または 1 (失敗)。

結果セット

なし。

アクセス許可

実行アクセス許可は、既定で sysadmin 固定サーバー ロールのメンバーになります。 これらのアクセス許可は転送できません。

次の例では、ファイル グループfg1の領域 (エラー 1105) が不足しているため、復旧中にデータベースdb1が疑わしいとマークされています。

USE master;
GO

EXEC sp_add_data_file_recover_suspect_db db1,
    fg1,
    file2,
    'C:\Program Files\Microsoft SQL Server\MSSQL13.MSSQLSERVER\MSSQL\Data\db1_file2.mdf',
    '1 MB';