次の方法で共有


sp_post_msx_operation (Transact-SQL)

適用対象: SQL Server

ターゲット サーバーがダウンロードして実行できるように、 sysdownloadlist システム テーブルに操作 (行) を挿入します。

Transact-SQL 構文表記規則

構文

sp_post_msx_operation
    [ @operation = ] 'operation'
    [ , [ @object_type = ] 'object_type' ]
    [ , [ @job_id = ] 'job_id' ]
    [ , [ @specific_target_server = ] N'specific_target_server' ]
    [ , [ @value = ] value ]
    [ , [ @schedule_uid = ] 'schedule_uid' ]
[ ; ]

引数

[ @operation = ] 'operation'

転記された操作の操作の種類。 @operationvarchar(64)で、既定値はありません。 有効な操作は、 @object_typeによって異なります。

オブジェクトの種類 操作
JOB INSERT
UPDATE
DELETE
START
STOP
SERVER RE-ENLIST
DEFECT
SYNC-TIME
SET-POLL
SCHEDULE INSERT
UPDATE
DELETE

[ @object_type = ] 'object_type'

操作を通知するオブジェクトの種類を指定します。 @object_typevarchar(64) で、既定値は JOB です。 有効な型は、 JOBSERVER、および SCHEDULEです。

[ @job_id = ] 'job_id'

操作が適用されるジョブのジョブ識別番号。 @job_iduniqueidentifier で、既定値は NULL です。 0x00 は、すべてのジョブを示します。 @object_typeSERVERされている場合、@job_idは必要ありません。

[ @specific_target_server = ] N'specific_target_server'

指定した操作が適用されるターゲット サーバーの名前。 @specific_target_serversysname で、既定値は NULL です。 @job_idが指定されていても、@specific_target_serverが指定されていない場合、ジョブのすべてのジョブ サーバーに対して操作がポストされます。

[ @value = ] value

ポーリング間隔を秒数で指定します。 @valueint で、既定値は NULL です。 このパラメーターは、 @operationSET-POLL場合にのみ指定します。

[ @schedule_uid = ] 'schedule_uid'

操作が適用されるスケジュールの一意識別子を指定します。 @schedule_uiduniqueidentifier で、既定値は NULL です。

リターン コードの値

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

結果セット

ありません。

解説

sp_post_msx_operation は、 msdb データベースから実行する必要があります。

sp_post_msx_operationは常に安全に呼び出すことができます。これは、現在のサーバーがマルチサーバーの Microsoft SQL Server エージェントであるかどうかを最初に判断し、その場合は、@object_typeがマルチサーバー ジョブであるかどうかを判断するためです。

操作が転記されると、 sysdownloadlist テーブルに表示されます。 ジョブを作成してポストした後、そのジョブに対する後続の変更もターゲット サーバー (TSX) に伝達する必要があります。 この手順は、ダウンロード リストを使用して行うこともできます。

SQL Server Management Studio でダウンロード リストを管理することを強くお勧めします。 詳細については、「 ジョブの表示または変更」を参照してください。

アクセス許可

このストアド プロシージャを実行するには、固定サーバー ロール sysadmin をユーザーに付与する必要があります。