SQL SERVER 2005 XML Julio Pacheco APRENDIENDO CON EJEMPLOS Temario  ¿Por qué XML en la base de datos?  El tipo de datos XML 

Download Report

Transcript SQL SERVER 2005 XML Julio Pacheco APRENDIENDO CON EJEMPLOS Temario  ¿Por qué XML en la base de datos?  El tipo de datos XML 

Slide 1

SQL SERVER 2005 XML
Julio Pacheco

APRENDIENDO CON
EJEMPLOS


Slide 2

Temario
 ¿Por qué XML en la base de datos?
 El tipo de datos XML
 Creación de datos XML
 Esquema XML colecciones
 Tipo de datos XML métodos
 XQuery
 Indexación de XML


Slide 3

¿Por que XML y Bases de datos relacionales?
 Consulta y modificación de datos XML con transacciones

 Interoperabilidad entre XML y relacional de datos
 Garantizar que los datos almacenados está bien formado

Opcionalmente, validar los datos almacenados con el
esquema
 XML con índices de eficiencia de procesamiento de
consulta
 Acceso a datos XML a través de SOAP, ADO.NET y OLE DB
 La gestión de datos. Por ejemplo, de backup, recuperación y
replicación


Slide 4

Tipos de Datos XML
 Declaración (en su mayoría) al igual que otros tipos de datos

Tabla: CREATE TABLE T (MyXml XML)
Variable: DECLARE @ MyXml XML
 Es de uso (en su mayoría) al igual que otros tipos de datos

Consulta: SELECT MyXml FROM T
Variable: SET @ MyXml = ' 12 '
Algunas de las limitaciones:
 No hay soporte a la conversión de text o ntext.
 No se puede comparar o ordenados. Por lo tanto, no GROUP BY, PRIMARY

KEY, etc.
 No puede ser utilizado como un parámetro para cualquier escalar, construido

en funciones distintas de IsNull, se unen, y DATALENGTH.
 Almacenados semánticamente. El orden de atributos y espacios en blanco

insignificantes no son conservados.


Slide 5

Generando XML
 Conversión de Cadenas

Forma más común de crear XML
Por ejemplo,
SET @ MyXml = ' 12 '

 La opción mas facil para cargar una archivo XML usar

OPENROWSET

 FOR XML es la cláusula para convertir los datos de la

tabla en un XML, existen muchas opciones en SQL
Server 2005.


Slide 6

Ejemplo 1


Slide 7

XML Esquemas
 Un esquema es una descripción de un tipo de documento XML (por





ejemplo, fin)
Validar el esquema de las colecciones frente a esquema XML (XSD)
Crear esquema XML colección
Puede utilizar cualquiera de una cadena o variable xml para xsd
el manejo puede ser complicado
Añadir ALTER para los nuevos esquemas, los elementos
DROP para borrarlos. Estos no puede tener dependencias.

 Algunas de las limitaciones
 xsd: include, xsd: key, xsd: keyref no se admite.
 Zona horaria siempre normalizado a GMT.
 Muy grandes esquemas de provocar errores debido a los límites


Slide 8

Ejemplo 2


Slide 9

Metodos del tipo de datos XML
 Tipo de datos XML es el único tipo que soporta las

operaciones de:
Query () - devuelve XML XQuery de expresión
Value() - devuelve SQL tipo de XQuery
Exists () - bool si existe XQuery
Modify () - los cambios en XML utilizando
XQuery
Nodes () - XML en fragmentos de datos
relacionales; pensar en ello como una tabla de
valor dividido


Slide 10

XQuery
 Un enorme y complejo tema

Subconjunto de XQuery 1.0 y XPath 2.0 es soportado

 FLWOR es como en SQL de SELECT.
 FLOWR: DE, E., WHERE, ORDER BY, RETORNO
 En caso de duda, el uso XPath porque es más rápido

XQuery tiene una serie de funciones nativas.
data (), string (), concat (), COUNT (), AVG (), etc
Uso de SQL dentro de XQuery
sql: column () permite el acceso a la columna de datos
sql: variable () permite el acceso a las variables

 XML DML permite la modificación de datos XML

Insert
Delete
Sustitute of


Slide 11

Ejemplo 3


Slide 12

XML Indexación
 Una de las mejores características!

 Dos tipos: primaria y secundaria
 Primaria índice incluye todas las etiquetas, los valores y

caminos dentro de los casos en XML una columna XML
 El cuadro debe tener un índice agrupado en PK para
correlacionar con el índice de filas en la tabla.
 Tres tipos de secundaria. La eficiencia depende de uso
 Path - ruta / B + valor del árbol. Útil si usted utiliza una
gran cantidad de XPath
¡Debe tener una primera primaria!


Slide 13

Mas Ejemplos


Slide 14

Mejores Practicas
 Sólo se debe usar XML si lo necesita

 BD relacional es mejor para la mayoría de aplicación
 XML es mejor para la semi-estructurado de datos,






solicitudes de servicio, marcas
Muchos documentos XML pequeños es mejor que realizar
un gran uno
Usar tipos MAX tipos de uso para preservar la fidelidad
XML
Uso de esquemas sólo si necesita validación
Utilice granel a obtener desde el archivo XML
Si la consulta XML, uso de índices


Slide 15

Resumen
 Temas vistos:
 Relación XML/Bases Datos Relacionales?
 Tipo de Dato XML
 Creando XML
 XML Esquemas
 XQuery
 Metodos en XML
 XML Indexación

 ¿Preguntas?