ALTER MESSAGE TYPE (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 ;