Académique Documents
Professionnel Documents
Culture Documents
XML
TIPO DE DATOS Y CONSULTAS RELACIONADAS
CON XML EN SQL SERVER 2016
PROFESOR:
ING. OLMAN NÚÑEZ PERALTA
1. Tabla de contenido
2. Tabla de Figuras
FIGURE 1. DIFERENCIA ENTRE XML Y HTML. EXTRAÍDO DE: WALTER SAGASTEGUI LESCANO (S.F.). QUE ES Y
PARA QUÉ SIRVE EL LENGUAJE DE ETIQUETAS XML? ................................................................................ 5
FIGURE 2. EJEMPLO XML. TOMADO DE: W3SCHOOLS........................................................................................ 6
FIGURE 3. EJEMPLO DE XML. TOMADO DE: W3SCHOOLS .................................................................................. 7
FIGURE 4. PREDEFINIDOS REFERENCIAS A ENTIDADES EN XML. TOMADO DE: W3SCHOOLS .............................. 7
FIGURE 5.EJEMPLO DE CONSULTA EN XML. CONDIGO BASE. TOMADO DE: W3SCHOOLS .................................. 8
FIGURE 6. EJEMPLO DE CONSULTA EN XML. CONSULTA. TOMADO DE W3SCHOOLS ......................................... 9
FIGURE 7.EJEMPLO DE CONSULTA EN XML. RESULTADO. TOMADO DE: W3SCHOOLS ....................................... 9
FIGURE 8. XQUERY FLWOR. TOMADO DE: W3SCHOOLS .................................................................................. 9
1
XML 18 de octubre de 2017
3. Objetivos de la Investigación
Exponer los diferentes tipos de datos y las consultas relacionadas con XML en SQL
Server 2016, así como la importancia que esta tiene para las empresas costarricenses y las
2
XML 18 de octubre de 2017
4. Introducción
las personas sino también para las compañías, gobiernos, instituciones y cualquier tipo de
ente social.
Pero que es un dato y porque es tan importante, un dato es una representación simbólica
o un atributo de una entidad (Pérez Porto, Julián y Merino, María, 2009). Sin embargo, dada
la definición anterior podemos ver que un dato por sí mismo no es importante, pero si
tenemos un conjunto de un mismo dato (dependiendo del tipo de dato) podemos obtener
mucha información, por ejemplo: la edad de los clientes de una tienda podría ayudar a crear
Es por esto que actualmente las organizaciones se preocupan cada vez más por la
almacenar manipular y analizar los diferentes tipos de datos que las compañías necesitan,
con el fin de mejorar la toma de sus decisiones, conocer mejor a sus clientes y demás.
3
XML 18 de octubre de 2017
5. XML
de etiquetado extensible, muy simple pero estricto, el cual es fundamental para el intercambio
de una gran variedad de datos y su función principal es describirlos pero sin mostrarlos (W3C
En otras palabras, es un lenguaje que se utiliza para decir algo acerca de otro, o sea,
es un metalenguaje extensible de etiquetas que fue desarrollado por el Word Wide Web
Consortium (W3C). Es una adaptación del SGML (Standard Generalized Markup Language),
esto, el XML no es un lenguaje en sí mismo, sino un sistema que permite definir lenguajes
Según Julián P. Porto y Ana Gardey (Definición.de, 2010), XML tiene la capacidad
de definir lenguajes como XHTML, MathML y SVG; algunos de sus campos de aplicación
son las hojas de cálculo, los documentos de texto, páginas web y las bases de datos; y algunos
4
XML 18 de octubre de 2017
hipertexto en HTML.
está delimitado por dos etiquetas como se hace también en HTML, con la diferencia que el
Figure 1. Diferencia entre XML y HTML. Extraído de: Walter Sagastegui Lescano (s.f.). Que es y para qué sirve el
lenguaje de Etiquetas XML?
Como se puede ver en la imagen <H1> y <Nombre> son etiquetas y ambas encierra
visualizar el texto “Mateo” en la página web pero no dice nada de su significado pudiendo
ser el nombre de una ciudad, de una persona, etc. Mientras que la segunda etiqueta <Nombre>
que es de XML, nos indica que “Mateo” es nombre de persona, preocupándose asi del
Antes de ver como se realiza una consulta en XML, se deben de conocer su estructura
5
XML 18 de octubre de 2017
Los documentos XML se forman como arboles de elementos, el cual se inicia con una
raíz y las ramas de la raíz son los elementos secundarios, los que a su vez pueden tener sub-
elementos. Muchas veces se utiliza un prólogo antes de esto para definir la versión de XML
(W3Schools.com, s.f.):
También se debe tomar en cuenta todos los elementos deben de tener una etiqueta de
apertura y de cierre, las cuales deben estar escritas siempre con el mismo caso, y la de cierre
6
XML 18 de octubre de 2017
debe estar precedida con el símbolo “/”. Es importante también que estén correctamente
eso se debe de usar XQuery, el cual es un lenguaje de búsqueda de los elementos y atributos
de XML. Para realizar la consulta es necesario el uso de funciones de utiliza XQuery, como
por ejemplo: doc() que sirve para abrir archivos (W3Schools.com, s.f.).
A continuación se debe de indicar una ruta a seguir, la cual esa conformada por la
7
XML 18 de octubre de 2017
El ejemplo siguiente muestra primero el condigo base, seguido por la consulta y por
8
XML 18 de octubre de 2017
El cuál es la misma sentencia anterior pero utilizando las palabras reservadas for
(selecciona todos los elementos e libro bajo el elemento librería en la variable $x), where
(selecciona solo elementos del libro con un elemento de precio mayor que 30), order by
(define el tipo de orden) y return (especifica que debe ser devuelto), obteniendo el mismo
9
XML 18 de octubre de 2017
Hay muchas tipos de consultas que se pueden realizar dependiendo de lo que se desea,
sin embargo, a nivel de este documentos nos limitaremos a las anteriores que son las mas
básicas.
SQL Server
5.3.1. Ventajas
podría escribir un documento de texto plano con los datos que estaba manejando en formato
Migración de datos. Si tenemos que mover los datos de una base de datos a otra sería
y los programadores del web tenemos que hacer unas cosas u otras en función del navegador
del usuario. Con XML tenemos una sola aplicación que maneja los datos y para cada
navegador o soporte podremos tener una hoja de estilo o similar para aplicarle el estilo
10
XML 18 de octubre de 2017
adecuado. Si mañana nuestra aplicación debe correr en WAP solo tenemos que crear una
5.3.2. Desventajas
Las instancias almacenadas de tipo de dato XML no pueden superar los 2 GB.
No se puede utilizar como un subtipo de una instancia de sql_variant (Un tipo de datos
que almacena valores de varios tipos de datos compatibles con SQL Server.). Además, no
admite la conversión a text ni a ntext. Es preferible utilizar Varchar (max) o nvarchar (max).
No puede compararse ni ordenarse. Esto quiere decir que un tipo de dato XML no se
puede utilizar en una instrucción Group By. Tampoco, puede utilizarse como parámetro de
No puede utilizarse como columna clave de un índice. Pero puede incluirse en forma
de datos en un índice clúster o agregarse a un índice noun clúster con el uso de la palabra
comunicar datos entre o hacia sistemas de información; en las empresas de Costa Rica, sobre
todo las de gran tamaño tienen muchos sistemas y con frecuencia con distintas tecnologías
11
XML 18 de octubre de 2017
Los beneficios de utilizar XML a nivel de base de datos van muy relacionado con las
importante en cuanto a la comunicación con otras aplicaciones, puede que la opción de usar
XML en base de datos sea mejor. Por ejemplo si se utiliza el API (Interfaz de Programación
tiene un cliente RSS (Really Simple Syndication) para capturar las noticias de nuestra web o
para la elaboración de los SiteMaps (archivo en el que se pueden enumerar las páginas de tu
sitio web para informar a Google y a otros motores de búsqueda sobre la organización del
Dentro de los beneficios más importantes que tienen las empresas con el
almacenamiento de datos en formato XML nativo en comparación con las bases de datos
Tener los datos almacenados en formato XML permite compartirlos más fácilmente
12
XML 18 de octubre de 2017
mantiene intacta.
Permite extraer una parte del documento XML o insertar una nueva sin remplazar
todo el documento.
consulta diseñado para colecciones de datos XML), Xlink (recomendación del World
Wide Web Consortium (W3C) que permite crear elementos de XML que describen
Un ejemplo de compartir datos entre sistemas con servicios Web son los indicadores
económicos del Banco Central de Costa Rica donde hay datos de gran importancia para las
empresas en el país que son utilizados para calcular la compra y vende de dólares, para emitir
facturas cuando estas son pagadas con moneda extranjera, tasas de interés de referencia para
13
XML 18 de octubre de 2017
Dicho Servicio Web devuelve los datos por medio de un formato XML que puede ser
Por ejemplo se pueden poner los siguientes valores a los parámetros del servicio Web
tcIndicador: 317
tcFechaInicio: 15/10/2017
tcFechaFinal: 17/16/2017
tcNombre: Tipo de cambio colón costarricense
tnSubNiveles: N
Este devuelve el siguiente archivo XML en el cual están los datos del tipo de cambio
oficial de compra del dólar en Costa Rica para el rango de fechas indicado:
<string xmlns="http://ws.sdde.bccr.fi.cr">
<Datos_de_INGC011_CAT_INDICADORECONOMIC>
<INGC011_CAT_INDICADORECONOMIC>
<COD_INDICADORINTERNO>317</COD_INDICADORINTERNO>
14
XML 18 de octubre de 2017
<DES_FECHA>2017-10-15T00:00:00-06:00</DES_FECHA>
<NUM_VALOR>568.13000000</NUM_VALOR>
</INGC011_CAT_INDICADORECONOMIC>
<INGC011_CAT_INDICADORECONOMIC>
<COD_INDICADORINTERNO>317</COD_INDICADORINTERNO>
<DES_FECHA>2017-10-16T00:00:00-06:00</DES_FECHA>
<NUM_VALOR>568.13000000</NUM_VALOR>
</INGC011_CAT_INDICADORECONOMIC>
<INGC011_CAT_INDICADORECONOMIC>
<COD_INDICADORINTERNO>317</COD_INDICADORINTERNO>
<DES_FECHA>2017-10-17T00:00:00-06:00</DES_FECHA>
<NUM_VALOR>568.13000000</NUM_VALOR>
</INGC011_CAT_INDICADORECONOMIC>
</Datos_de_INGC011_CAT_INDICADORECONOMIC>
</string>
XML resulta una opción muy viable, ya que es un lenguaje Universal que nos permite
representar datos en Internet, además como se trata de texto plano nos evita tener instalados
programas especiales que permitan reconocer el formato de los datos, lo que lo hace muy
portable entre distintas plataformas, por ejemplo: podemos utilizar documentos XML con
15
XML 18 de octubre de 2017
En la actualidad existe una imperiosa necesidad de las empresas por contar con la
información de manera inmediata, por ello optan por utilizar aplicaciones basadas en Web
que permitan obtener datos de manera remota en un corto tiempo y sin la necesidad de
16
XML 18 de octubre de 2017
6. Conclusiones
Se definir el concepto de un XML, para asi obtener un mejor entendimiento de lo que es,
sus funciones y las diferentes aplicaciones que se le puede dar a esta herramienta.
Se ilustrar cómo se realiza una consulta a un campo de tipo XML a través de un ejemplo.
17
XML 18 de octubre de 2017
7. Referencias Bibliográficas
https://definicion.de/datos/
http://www.masadelante.com/faqs/base-de-datos
http://www.w3c.es/Divulgacion/GuiasBreves/TecnologiasXML
https://definicion.de/xml/
https://www.aprenderaprogramar.com/index.php?option=com_content&view=articl
e&id=102:ique-es-y-para-que-sirve-el-lenguaje-de-etiquetas-xml-extensible-
markup-language&catid=46&Itemid=163
https://es.wikipedia.org/wiki/XQuery
http://desarrolloweb.dlsi.ua.es/ixml-1a-ed/modulo-05
https://docs.microsoft.com/es-es/sql/relational-databases/xml/for-xml-sql-server
https://blogs.msdn.microsoft.com/esecuelesinfronteras/2011/10/13/uso-de-campos-
xml-en-sql-server/
https://desarrolloweb.com/articulos/460.php
https://msdn.microsoft.com/es-es/library/hh403385(v=sql.110).aspx
https://www.w3schools.com/xml/default.asp
18