Nota:
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
Se aplica a:SQL Server
Azure SQL Database
Instancia
administrada de Azure SQLBase de datos SQL en Microsoft Fabric
La validación del lenguaje de definición de esquemas XML (XSD) tiene algunas limitaciones relativas a las columnas SQL que usan el tipo de datos xml . En la tabla siguiente se proporcionan detalles acerca de estas limitaciones, así como directrices para modificar el esquema XSD para que funcione con SQL Server. Los temas de este artículo proporcionan información adicional sobre limitaciones específicas y orientación para trabajar con ellas.
| Elemento | Limitación |
|---|---|
| minOccurs y maxOccurs | Los valores de los atributos minOccurs y maxOccurs deben caber en enteros de 4 bytes. El servidor rechazará los esquemas que no cumplan esta restricción. |
| <XSD:elección> | SQL Server rechaza los esquemas que tienen una partícula <xsd:choice> sin elementos secundarios, a menos que la partícula se defina con un valor de atributo minOccurs igual a cero. |
| <xsd:include> | Actualmente, SQL Server no admite este elemento. El servidor rechaza los esquemas XML que incluyen este elemento. Para solucionar este problema, los esquemas XML que incluyen la directiva <xsd:include> se pueden procesar previamente para copiar y combinar el contenido de todos los esquemas incluidos en un solo esquema para cargar en el servidor. Para obtener más información, vea Preprocesar un esquema para combinar esquemas incluidos. |
| <xsd:key>, <xsd:keyref> y <xsd:unique> | Actualmente, SQL Server no admite estas restricciones basadas en XSD para exigir la unicidad o establecer claves y referencias de claves. Los esquemas XML que contienen estos elementos no se pueden registrar. |
| <xsd:redefine> | SQL Server no admite este elemento. Para obtener más información sobre otra manera de actualizar esquemas, vea El elemento <xsd:redefine>. |
| Valores <xsd:simpleType> | SQL Server solo admite una precisión de milisegundos para los tipos simples que tienen componentes de segundos distintos de xs:time y xs:dateTime, y una precisión de 100 nanosegundos para xs:time y xs:dateTime. SQL Server aplica limitaciones a todas las enumeraciones de tipo simple XSD reconocidas. SQL Server no admite el uso del valor "NaN" en declaraciones <xsd:simpleType>. Para obtener más información, vea Valores de las declaraciones <xsd:simpleType>. |
| xsi:schemaLocation y xsi:noNamespaceSchemaLocation | SQL Server no tiene en cuenta estos atributos si están presentes en los datos de instancias XML insertados en una columna o variable del tipo de datos xml . |
| xs:QName | SQL Server no admite los tipos derivados de xs:QName que usan un elemento de restricción de esquema XML. SQL Server no admite tipos de unión con xs:QName como elemento del miembro. Para obtener más información, consulte The xs:QName Type. |
| Agregar miembros a un grupo de sustitución existente | No puede agregar miembros a un grupo de sustitución existente en una colección de esquemas XML. Un grupo de sustitución en un esquema XML está sujeto a la restricción de que el elemento de cabecera y todos sus elementos miembros deben definirse en la misma instrucción {CREATE | ALTER} XML SCHEMA COLLECTION. |
| Formas canónicas y restricciones de patrón | La representación canónica de un valor no puede infringir la restricción de patrón de su tipo. Para obtener más información, consulte Formas canónicas y restricciones de patrón. |
| Facetas de enumeración | SQL Server no admite los esquemas XML con tipos que tienen facetas de patrón o enumeraciones que infringen estas facetas. |
| Longitud de faceta | Las facetas length, minLengthy maxLength se almacenan como tipo long . Este tipo es de 32 bits. Por tanto, el intervalo de valores aceptables para estos valores es 2^31. |
| Atributo de Id. | Cada componente de esquema XML puede tener un atributo de Id. en él. SQL Server exige la unicidad de las declaraciones <xsd:attribute> de tipo ID pero no almacena estos valores. El ámbito de aplicación de la unicidad es la instrucción {CREATE | ALTER} XML SCHEMA COLLECTION. |
| Tipo de identificación | SQL Server no admite elementos de tipo xs:ID, xs:IDREF o xs:IDREFS. Un esquema no puede declarar elementos de este tipo, ni elementos derivados de este tipo por restricción o extensión. |
| Espacio de nombres local | El espacio de nombres local tiene que especificarse explícitamente para el elemento <xsd:any>. SQL Server rechaza esquemas que usan una cadena vacía ("") como valor para el atributo de espacio de nombres. En su lugar, SQL Server requiere el uso explícito de "##local" para indicar un elemento o atributo no calificado como instancia del carácter comodín. |
| Contenido simple y de tipo mixto | SQL Server no admite la restricción de un tipo mixto a un contenido simple. Para obtener más información, consulte Tipo mixto y contenido simple. |
| Tipo NOTATION | SQL Server no admite el tipo NOTATION. |
| Situaciones de falta de memoria | Cuando se trabaja con colecciones de esquemas XML de gran tamaño, puede que se produzca una condición de memoria insuficiente. Para conocer soluciones para este problema, vea Las condiciones de memoria insuficiente y las grandes colecciones de esquemas XML. |
| Valores repetidos | SQL Server rechaza los esquemas en los que el atributo de bloqueo o final tiene valores repetidos como "restriction restriction" y "extension extension". |
| Identificadores de componentes de esquema | SQL Server limita los identificadores de los componentes de esquema a una longitud máxima de 1000 caracteres Unicode. Tampoco se admiten los pares de caracteres complementarios en identificadores. |
| Información de zona horaria | En SQL Server 2008 (10.0.x) y versiones posteriores, la información de zona horaria es completamente compatible con los valores xs:date, xs:time y xs:dateTime para la validación de esquemas XML. Con el modo de compatibilidad hacia atrás SQL Server 2005 (9.x), la información de la zona horaria siempre se normaliza a Hora Universal Coordinada (Hora Media de Greenwich). En el caso de los elementos de tipo dateTime , el servidor convierte la hora especificada a la hora GMT mediante el valor de desplazamiento ("-05:00") y devuelve la hora GMT correspondiente. |
| Tipos de unión | SQL Server no admite las restricciones de tipos de unión. |
| Decimales de precisión variable | SQL Server no admite los decimales de precisión variable. El tipo xs:decimal representa los números decimales de precisión arbitraria. Los procesadores que mínimamente cumplan con XML deben admitir números decimales con un mínimo de totalDigits=18. SQL Server admite totalDigits=38,, pero limita a 10 los dígitos de la fracción. Todos los valores de instancia xs:decimal son representados internamente por el servidor utilizando el tipo SQL numeric (38, 10). |
Contenido relacionado
- datos XML de SQL Server
- Comparación de XML con tipo y XML sin tipo
- Conceder permisos en una colección de esquemas XML
- Restricción de atribución única de partícula
- Colecciones de esquemas XML (SQL Server)
- Formas canónicas y restricciones de patrones
- Componentes de comodín y validación de contenido
- El elemento <xsd:redefine>
- El tipo xs:QName
- Valores para declaraciones de <xsd:simpleType>
- Facetas de enumeración
- Contenido mixto y sencillo
- Grandes colecciones de esquemas XML y condiciones de falta de memoria
- Modelos de contenido no deterministas