Share via


ALTER MESSAGE TYPE (Transact-SQL)

Altera as propriedades de um tipo de mensagem.

Ícone de vínculo de tópicoConvenções de sintaxe Transact-SQL

Sintaxe

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

Argumentos

  • message_type_name
    O nome do tipo de mensagem a ser alterado. Os nomes de servidor, banco de dados e esquema não podem ser especificados.

  • VALIDATION
    Especifica como o Service Broker valida o corpo da mensagem para mensagens desse tipo.

  • NONE
    Nenhuma validação é executada. O corpo da mensagem pode conter qualquer dado ou pode ser NULL.

  • EMPTY
    O corpo da mensagem deve ser NULL.

  • WELL_FORMED_XML
    O corpo da mensagem deve conter XML bem formado.

  • VALID_XML_WITH_SCHEMA = schema_collection_name
    O corpo da mensagem deve conter XML que obedece a um esquema na coleção de esquema especificada. O schema_collection_name deve ser o nome de uma coleção de esquema XML existente.

Comentários

Alterar a validação de um tipo de mensagem não afeta as mensagens que já foram entregues a uma fila.

Para alterar a AUTHORIZATION para um tipo de mensagem, use a instrução ALTER AUTHORIZATION.

Permissões

A permissão para alterar um tipo de mensagem assume como padrão o proprietário do tipo de mensagem, os membros das funções de banco de dados fixas db_ddladmin ou db_owner e os membros da função de servidor fixa sysadmin.

Quando a instrução ALTER MESSAGE TYPE especifica uma coleção de esquema, o usuário que executa a instrução deve ter a permissão REFERENCES na coleção de esquema especificada.

Exemplos

O exemplo a seguir altera o tipo de mensagem //Adventure-Works.com/Expenses/SubmitExpense para exigir que o corpo da mensagem contenha um documento XML bem formado.

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