ALTER MESSAGE TYPE (Transact-SQL)
Cambia las propiedades de un tipo de mensaje.
Sintaxis
ALTER MESSAGE TYPE message_type_name
VALIDATION =
{ NONE
| EMPTY
| WELL_FORMED_XML
| VALID_XML WITH SCHEMA COLLECTION schema_collection_name }
[ ; ]
Argumentos
message_type_name
Es el nombre del tipo de mensaje que se va a cambiar. No se pueden especificar nombres de servidor, base de datos o esquema.VALIDATION
Especifica cómo Service Broker valida el cuerpo del mensaje para mensajes de este tipo.NONE
No se realiza ninguna validación. El cuerpo del mensaje puede contener cualquier dato o tener un valor NULL.EMPTY
El cuerpo del mensaje debe tener un valor NULL.WELL_FORMED_XML
El cuerpo del mensaje debe contener XML correcto.VALID_XML_WITH_SCHEMA = schema_collection_name
El cuerpo del mensaje debe contener XML que cumpla con el esquema de la colección de esquemas especificada. schema_collection_name debe ser el nombre de una colección de esquemas XML existente.
Notas
El cambio de la validación de un tipo de mensaje no afecta a los mensajes que ya se han entregado a una cola.
Para modificar AUTHORIZATION para un tipo de mensaje, utilice la instrucción ALTER AUTHORIZATION.
Permisos
De forma predeterminada, se concede permiso para modificar un tipo de mensaje al propietario del tipo de mensaje, a los miembros de las funciones fijas de base de datos ddl_admin o db_owner y a los miembros de la función fija de servidor sysadmin.
Si la instrucción ALTER MESSAGE TYPE especifica una colección de esquemas, el usuario que ejecuta la instrucción debe tener el permiso REFERENCES en la colección de esquemas especificada.
Ejemplos
En el ejemplo siguiente se cambia el tipo de mensaje //Adventure-Works.com/Expenses/SubmitExpense para que requiera que el cuerpo del mensaje contenga un documento XML correcto.
ALTER MESSAGE TYPE
[//Adventure-Works.com/Expenses/SubmitExpense]
VALIDATION = WELL_FORMED_XML ;