SQL SERVER 2014 - XML Guia Essencial para Programação com XML no SQL Server.
-
Upload
maria-de-begonha-rodrigues-miranda -
Category
Documents
-
view
249 -
download
8
Transcript of SQL SERVER 2014 - XML Guia Essencial para Programação com XML no SQL Server.
SQL SERVER 2014 - XML
Guia Essencial para Programação com XML no SQL Server
Conhecer profundamente, esta é a base de todo o sucesso.
SurgimentoO XML provém de uma linguagem que a IBM inventou lá pelos anos 70. A linguagem da IBM chama-se GML (General Markup Language) e surgiu pela necessidade que tinham na empresa de armazenar grandes quantidades de informação de temas diversos.
Evolução• SGML – Standard Generalized
Markup Language
• HTML – Hipertext Markup Language
• XML – Extensible Markup Language
A principal característica do XML, de criar uma infraestrutura única para diversas linguagens, é que linguagens desconhecidas e de pouco uso também
podem ser definidas sem maior trabalho e sem necessidade de ser submetidas aos comitês de
padronização.
XML
O XML• É hierárquico• É case sensitive• Contém dados semiestruturados• Pode ser formatado, pesquisado, validado e manipulado• Não “pertence” a nenhuma empresa
Tecnologias Relacionadas• Formatação– CSS– XLS– XSLT
• Validação– DTD– XSD
• Pesquisa– XQUERY– XPATH
Estrutura do XML
Document XML
Fragment XML
Element-Centric
Atribute-Centric
Quando as informações são armazenadas nos atributos.Elementos podem ter repetições.
XML no T-SQL• Datatype• Schema Collection• DDL Triggers• Logon Triggers• Eventos• Service Broker
Datatype XML• É usado para armazenar documentos ou
fragmentos de XML• Pode ser validado• Contém métodos que permitem a pesquisa ou
manipulação do seu conteúdo• É armazenado de forma canônica
Variáveis XML• Declare @xml xml• Set @xml = ‘<pessoa nome=“Paulo”></pessoa>’• Select @xml as ‘Forma canônica’
Campo XMLCREATE TABLE ALUNO(COD_ALUNO INT IDENTITY,NOME_ALUNO VARCHAR(50),OBSERVACOES_ALUNO XML);
INSERT ALUNO VALUES ('PAULO','<documentos><rg>12345678</rg><cpf>987654</cpf></documentos>');INSERT ALUNO VALUES ('LUANA','<documentos><rg>23456789</rg><cpf>123456</cpf></documentos>');INSERT ALUNO VALUES ('JOANA','<documentos><rg>23654532</rg><cpf>78878998</cpf></documentos>');
SELECT * FROM ALUNO;
XML Schema CollectionCREATE XML SCHEMA COLLECTION XSD_DOCUMENTOS_ALUNOASN'<schema xmlns="http://www.w3.org/2001/XMLSchema">
<element name="DOCUMENTOS"><complexType>
<sequence><element name="RG" type="string"/><element name="CPF" type="string"/>
</sequence></complexType>
</element></schema>'
Validando o Schema no XML
Cláusula FOR XML
• Retorna XML em vez de linhas e colunas• É configurável, podendo retornar elementos,
atributos e esquemas• Introduzida no SQL 2000
xQuery• Linguagem de pesquisa e manipulação de nós (elementos ou atributos)
XML• Utiliza expressões FLWOR:
– For– Let– Where– Order– Return
• Métodos– Query()– Value()– Exist()– Modify()– Nodes()