共用方式為


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_ddladmindb_owner 固定資料庫角色的成員,以及 sysadmin 固定伺服器角色的成員。

當 ALTER MESSAGE TYPE 陳述式指定了結構描述集合時,執行這個陳述式的使用者必須有所指定之結構描述集合的 REFERENCES 權限。

範例

下列範例會變更 //Adventure-Works.com/Expenses/SubmitExpense 訊息類型來要求訊息主體包含格式正確的 XML 文件。

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