sp_procoption (Transact-SQL)
適用対象: SQL サーバー
ストアド プロシージャの自動実行を設定または解除します。 自動実行に設定されているストアド プロシージャは、SQL Server のインスタンスが起動されるたびに実行されます。
構文
sys.sp_procoption
[ @ProcName = ] N'ProcName'
, [ @OptionName = ] 'OptionName'
, [ @OptionValue = ] 'OptionValue'
[ ; ]
引数
[ @ProcName = ] N'ProcName'
オプションを設定するプロシージャの名前。 @ProcName は nvarchar(776)で、既定値はありません。
[ @OptionName = ] 'OptionName'
設定するオプションの名前。 @OptionName は varchar(35)であり、使用可能な唯一の値は startup
。
[ @OptionValue = ] 'OptionValue'
オプションをオン (true
または on
) またはオフ (false
または off
) に設定するかどうか。 @OptionValue は varchar(12)で、既定値はありません。
リターン コードの値
0
(成功) またはエラー番号 (失敗)。
解説
スタートアップ プロシージャは、master
データベースのdbo
スキーマに含まれている必要があり、INPUT
またはOUTPUT
パラメーターを含めることはできません。 ストアド プロシージャの実行は、起動時にすべてのデータベースが復旧され、「復旧が完了しました」というメッセージが記録されると開始します。
アクセス許可
sysadmin 固定サーバー ロールのメンバーシップが必要です。
例
次の例は、プロシージャの自動実行を設定します。
EXEC sp_procoption @ProcName = N'<procedure name>',
@OptionName = 'startup',
@OptionValue = 'on';
次の例は、プロシージャの自動実行を停止します。
EXEC sp_procoption @ProcName = N'<procedure name>',
@OptionName = 'startup',
@OptionValue = 'off';