Administrar colecciones de esquemas XML en el servidor

Como se describe en el tema Tipo de datos xml, SQL Server proporciona almacenamiento nativo de datos XML a través del tipo de datos xml. Opcionalmente, puede asociar esquemas XSD a una variable o una columna de tipo xml a través de una colección de esquemas XML. Esta colección almacena los esquemas XML importados y luego se usa para lo siguiente:

  • Validar instancias XML

  • Asignar un tipo a los datos XML cuando se almacenan en la base de datos

Tenga en cuenta que la colección de esquemas XML es una entidad de metadatos como una tabla de la base de datos. Se pueden crear, modificar y arrastrar. Los esquemas especificados en una instrucción CREATE XML SCHEMA COLLECTION (Transact-SQL) se importan automáticamente en el objeto de la colección de esquemas XML recién creado. Se pueden importar otros esquemas o componentes de esquemas en un objeto de la colección existente de la base de datos usando la instrucción ALTER XML SCHEMA COLLECTION (Transact-SQL).

Como se describe en el tema XML con tipo y sin tipo, el XML almacenado en una columna o variable al que está asociado un esquema se conoce como XML con tipo, porque el esquema proporciona la información del tipo de datos necesaria para los datos de la instancia. SQL Server usa esta información del tipo para optimizar el almacenamiento de datos.

El motor de procesamiento de consultas también usa el esquema para la comprobación de los tipos y para optimizar las consultas y la modificación de datos.

Además, SQL Server utiliza la colección de esquemas XML asociada, en el caso de xml con tipo, para validar la instancia XML. Si la instancia XML es compatible con el esquema, la base de datos permite que se almacene la instancia en el sistema con su información de tipos. De lo contrario, rechaza la instancia.

SQL Server proporciona diversas instrucciones DDL para administrar los esquemas de la base de datos. Sin embargo, para poder usarlas, primero hay que importar la colección de esquemas XML. Para obtener más información, vea DDL para administrar las colecciones de esquemas XML de la base de datos.

Para importar una colección de esquemas XML en una base de datos, se deben tener permisos. Para obtener más información, vea Permisos en una colección de esquemas XML.

Se puede usar la función intrínseca XML_SCHEMA_NAMESPACE para recuperar la colección de esquemas que está almacenada en la base de datos. Para obtener más información, vea Ver una colección de esquemas XML almacenada.

También puede usar la colección de esquemas XML para escribir variables, parámetros y columnas XML.