次の方法で共有


ALTER MESSAGE TYPE (Transact-SQL)

メッセージ型のプロパティを変更します。

トピック リンク アイコンTransact-SQL 構文表記規則

構文

ALTER MESSAGE TYPE message_type_name
   VALIDATION =
    {  NONE 
     | EMPTY 
     | WELL_FORMED_XML 
     | VALID_XML WITH SCHEMA COLLECTION schema_collection_name }
[ ; ]

引数

  • message_type_name
    変更するメッセージ型の名前を指定します。サーバー名、データベース名、スキーマ名は指定できません。

  • VALIDATION
    Service Broker によって、この型のメッセージの本文が検証される方法を指定します。

  • NONE
    検証が実行されません。メッセージの本文にはなんらかのデータが含まれているか、NULL の可能性があります。

  • EMPTY
    メッセージの本文は NULL であることが必要です。

  • WELL_FORMED_XML
    メッセージの本文には、整形式の XML が含まれている必要があります。

  • VALID_XML_WITH_SCHEMA = schema_collection_name
    メッセージの本文には、指定されたスキーマ コレクションのスキーマに準拠する XML が含まれている必要があります。schema_collection_name は、既存の XML スキーマ コレクションの名前であることが必要です。

説明

メッセージ型の検証を変更しても、既にキューに配布されているメッセージには影響しません。

メッセージ型の AUTHORIZATION を変更するには、ALTER AUTHORIZATION ステートメントを使用します。

権限

メッセージ型を変更する権限は、既定ではメッセージ型の所有者、db_ddladmin 固定データベース ロールまたは db_owner 固定データベース ロールのメンバ、および sysadmin 固定サーバー ロールのメンバに与えられています。

ALTER MESSAGE TYPE ステートメントがスキーマ コレクションを指定する場合、ステートメントを実行するユーザーは、指定されているスキーマ コレクションに対する REFERENCES 権限が必要です。

次の例では、メッセージ型 //Adventure-Works.com/Expenses/SubmitExpense を変更し、メッセージ本文に整形式の XML ドキュメントが含まれることを要求します。

ALTER MESSAGE TYPE
    [//Adventure-Works.com/Expenses/SubmitExpense]
    VALIDATION = WELL_FORMED_XML ;