SlideShare una empresa de Scribd logo
1 de 15
Descargar para leer sin conexión
SQLServerDF
Suporte XML nativo no
SQL Server 2014/2016
Rogério Moraes de Carvalho
Consultor e instrutor de TI
rogeriom.wordpress.com | @rogeriomc
Agenda
Suporte XML nativo no SQL Server 2014/2016
Debate inicial
Suas experiências: XML e SQL Server
XML e tecnologias relacionadas
O que é XML?
XML bem-formado
XML Schema e XML válido
XPath e XQuery
Algumas aplicações de XML
Suporte XML no SQL Server
Tipo de dado XML nativo
XML Schema Collections
Métodos do tipo de dados XML
Cláusula FOR XML
Debate final
Minhas experiências: XML e SQL Server
Suas experiências: XML e SQL Server
Debate inicial
XML sem SQL Server
Suas opiniões
O que você entende por XML?
Quando você usaria XML?
Você acha XML obsoleto?
Que desvantagens você destacaria?
Que vantagens você destacaria?
Casos de uso
Você tem casos de sucesso?
Você tem casos de fracasso?
XML no SQL Server
Suas opiniões
Você acha uma mistura possível?
Quando você usaria XML no SQL Server?
Você acha XML no SQL Server obsoleto?
Que desvantagens você destacaria?
Que vantagens você destacaria?
Casos de uso
Você tem casos de fracasso?
Você tem casos de sucesso?
O que é XML?
XML e tecnologias relacionadas
Linguagem de marcação
XML: Extensible Markup Language
Formato texto simples e flexível
Derivado do SGML
Criação e manutenção
W3C: World Wide Web Consortium
Comunidade internacional responsável
pelo desenvolvimento de padrões Web
Responsável pela especificação XML
Exemplo de documento XML
<?xml version="1.0" enconding="ISO-8859-1"?>
<Contato Id="1" Sexo="Feminino"
DataNascimento="1980-10-29">
<PrimeiroNome>Beatrice</PrimeiroNome>
<Sobrenome>Dias Lima</Sobrenome>
<Empresa Funcao="Gerente de Marketing">
Grupo Capivara
</Empresa>
<Endereco Tipo="Residencial"
CEP="08830-170" UF="SP">
<Logradouro Numero="1507">
Rua João Fernandes
</Logradouro>
<Cidade>Mogi das Cruzes</Cidade>
</Endereco>
</Contato>
XML bem formado
XML e tecnologias relacionadas
Todo documento XML com uma sintaxe correta
Principais regras para um documento bem formado
Deve ter um elemento raiz, que deve ser único
Todo elemento XML deve ter um marcador de abertura e outro de fechamento
Os marcadores de um elemento diferenciam letras maiúsculas de minúsculas
Elementos XML devem ser aninhados corretamente
Atributos de um elemento não podem ser repetidos
Valores de atributos devem ser delimitados por aspas ou apóstrofos
XML Schema e XML válido
XML e tecnologias relacionadas
XSD: XML Schema Definition
Linguagem baseada em XML para expressar as restrições de documentos XML
Define uma gramática para um conjunto de documentos XML
Um documento XML que satisfaz um XML Schema é denominado XML válido
XPath e XQuery
XML e tecnologias relacionadas
XPath
É uma sintaxe para definir partes de um documento XML
Usa expressões de caminho para navegar por documentos XML
Contém uma biblioteca padrão de funções
Recomendação do W3C: XML Path Language (XPath) 2.0 (Second Edition)
XQuery
É a linguagem padrão para consulta de dados XML
XQuery é para XML o que SQL é para bancos de dados relacionais
É construída com base em expressões XPath
Recomendação do W3C: XQuery 1.0: An XML Query Language (Second Edition)
Algumas aplicações de XML
XML e tecnologias relacionadas
Arquivos de configuração
Web.config (aplicações web ASP.NET)
Documentos de software para escritório
Microsoft Office 2007 ou superior (compactados no formato .zip)
OpenDocument - OpenOffice/LibreOffice (compactados no formato .zip)
Imagens vetoriais
SVG (Scalable Vector Graphics)
XML Web Services
Mensagens SOAP
...
Tipo de dado XML nativo
Suporte XML no SQL Server
Tipo de dado do SQL Server para armazenar dados XML
Instâncias de dados XML podem ser armazenados em:
Uma coluna do tipo XML
Uma variável do tipo XML
Exemplos
DECLARE @telefone xml = '<Telefone DDD="61">3222-2222</Telefone>';
CREATE TABLE Seguranca.Auditoria (IdAuditoria int PRIMARY KEY, Registro xml);
Sintaxe
xml ( [ CONTENT | DOCUMENT ] xml_schema_collection )
XML Schema Collections
Suporte XML no SQL Server
O SQL Server fornece armazenamento nativo para dados XML
Através do tipo de dado XML
Com uso de XML Schema Collection é possível associar esquemas XSD
Com uma coluna do tipo xml
Com uma variável do tipo xml
XML Schema Collections
Armazenam XML Schemas importados para o banco de dados
Objetivo dos XML Schema Collections
Validar instâncias XML
Definir tipo para os dados XML armazenados no banco de dados (XML tipado)
Métodos do tipo de dados XML
Suporte XML no SQL Server
Objetivos dos métodos
Para consultar uma instância XML
armazenada em uma variável ou uma
coluna do tipo XML
Cinco métodos do tipo XML
query()
value()
exist()
modify()
nodes()
Método query() do tipo XML
Descrição
Consulta XQuery em uma instância XML
Retorna um XML não tipado
Sintaxe
query('Xquery')
Método value() do tipo XML
Descrição
Consulta XQuery em uma instância XML
Retorna um valor escalar do tipo SQL
Sintaxe
value('Xquery', 'TipoSQL')
Métodos do tipo de dados xml
Suporte XML no SQL Server
Método exist() do tipo xml
Descrição
Consulta XQuery em uma instância XML
Retorna um bit
1: representa true (resultado não vazio)
0: representa false (resultado vazio)
NULL: instância XML nula (valor NULL)
Sintaxe
exist('Xquery')
Método modify() do tipo xml
Descrição
Modifica o conteúdo de uma instância XML
Utiliza XML Data Manipulation Language
XML DML: extensão da Microsoft ao XQuery
Sintaxe
modify('XML DML')
XML DML: insert
Sintaxe
insert
Expressao1
[ as first | as last ] into | after | before
Expressao2
Métodos do tipo de dados xml
Suporte XML no SQL Server
Método modify() do tipo xml
Sintaxe
modify('XML DML')
XML DML: delete
Sintaxe
delete Expressao
XML DML: replace value of
Sintaxe
replace value of
Expressao1
with
Expressao2
Método nodes() do tipo xml
Descrição
Útil para separar conteúdo de uma
instância XML em dados relacionais
Sintaxe
nodes('XQuery') as Tabela(Coluna)
Cláusula FOR XML
Suporte XML no SQL Server
Uma consulta SELECT retorna o resultado como um conjunto de linhas
Opcionalmente, é possível retornar o resultado como XML
Pela especificação da cláusula FOR XML
A cláusula FOR XML pode ser usada em consultas ou subconsultas
Em subconsultas, pode ser usado em instruções INSERT, UPDATE e DELETE
Modos da cláusula FOR XML
RAW: gera um elemento <row> por linha no conjunto de linhas
AUTO: gera um resultado aninhado baseado na instrução SELECT
EXPLICIT: permite maior controle do XML gerado
PATH: permite maior controle do XML gerado, porém mais simples que EXPLICIT
Minhas experiências: XML e SQL Server
Debate final
XML sem SQL Server
Minhas opiniões
O que eu entendo por XML?
Quando eu usaria XML?
Eu acho XML obsoleto?
Que desvantagens eu destacaria?
Que vantagens eu destacaria?
Casos de uso
Eu tenho casos de sucesso?
Eu tenho casos de fracasso?
XML no SQL Server
Minhas opiniões
Eu acho uma mistura possível?
Quando eu usaria XML no SQL Server?
Eu acho XML no SQL Server obsoleto?
Que desvantagens eu destacaria?
Que vantagens eu destacaria?
Casos de uso
Eu tenho casos de fracasso?
Eu tenho casos de sucesso?

Más contenido relacionado

La actualidad más candente

LabMM4 (T06 - 12/13) - Auto-associações e Introdução ao SQL
LabMM4 (T06 - 12/13) - Auto-associações e Introdução ao SQLLabMM4 (T06 - 12/13) - Auto-associações e Introdução ao SQL
LabMM4 (T06 - 12/13) - Auto-associações e Introdução ao SQLCarlos Santos
 
Banco de dados comandos sql
Banco de dados   comandos sqlBanco de dados   comandos sql
Banco de dados comandos sqlNilson Augustini
 
Banco de dados - Aula 1 SQL
Banco de dados - Aula 1 SQLBanco de dados - Aula 1 SQL
Banco de dados - Aula 1 SQLDaniel Brandão
 
Aula de SQL - Básico
Aula de SQL - BásicoAula de SQL - Básico
Aula de SQL - BásicoAirton Zanon
 
Banco de dados aula 4
Banco de dados aula 4Banco de dados aula 4
Banco de dados aula 4Ed W. Jr
 
Sql básico - Teoria e prática: Um grande resumo
Sql básico - Teoria e prática: Um grande resumoSql básico - Teoria e prática: Um grande resumo
Sql básico - Teoria e prática: Um grande resumoHelder Lopes
 
Treinamento de SQL Básico
Treinamento de SQL BásicoTreinamento de SQL Básico
Treinamento de SQL BásicoIgor Alves
 
T-SQL na prática com SQL SERVER Express 2012
T-SQL na prática com SQL SERVER Express 2012T-SQL na prática com SQL SERVER Express 2012
T-SQL na prática com SQL SERVER Express 2012Rodrigo Ribeiro
 

La actualidad más candente (9)

LabMM4 (T06 - 12/13) - Auto-associações e Introdução ao SQL
LabMM4 (T06 - 12/13) - Auto-associações e Introdução ao SQLLabMM4 (T06 - 12/13) - Auto-associações e Introdução ao SQL
LabMM4 (T06 - 12/13) - Auto-associações e Introdução ao SQL
 
Banco de dados comandos sql
Banco de dados   comandos sqlBanco de dados   comandos sql
Banco de dados comandos sql
 
Banco de dados - Aula 1 SQL
Banco de dados - Aula 1 SQLBanco de dados - Aula 1 SQL
Banco de dados - Aula 1 SQL
 
Aula de SQL - Básico
Aula de SQL - BásicoAula de SQL - Básico
Aula de SQL - Básico
 
Banco de dados aula 4
Banco de dados aula 4Banco de dados aula 4
Banco de dados aula 4
 
Sql básico - Teoria e prática: Um grande resumo
Sql básico - Teoria e prática: Um grande resumoSql básico - Teoria e prática: Um grande resumo
Sql básico - Teoria e prática: Um grande resumo
 
Treinamento de SQL Básico
Treinamento de SQL BásicoTreinamento de SQL Básico
Treinamento de SQL Básico
 
Hands on Labs - SQL Server 2008
Hands on Labs - SQL Server 2008Hands on Labs - SQL Server 2008
Hands on Labs - SQL Server 2008
 
T-SQL na prática com SQL SERVER Express 2012
T-SQL na prática com SQL SERVER Express 2012T-SQL na prática com SQL SERVER Express 2012
T-SQL na prática com SQL SERVER Express 2012
 

Destacado

O Projeto Mono: Aplicações .NET para sistemas não Windows
O Projeto Mono: Aplicações .NET para sistemas não WindowsO Projeto Mono: Aplicações .NET para sistemas não Windows
O Projeto Mono: Aplicações .NET para sistemas não WindowsAlessandro Binhara
 
Backend na nuvem com docker
Backend na nuvem com dockerBackend na nuvem com docker
Backend na nuvem com dockerGiovanni Bassi
 
TFS REST API e Universal Apps
TFS REST API e Universal AppsTFS REST API e Universal Apps
TFS REST API e Universal AppsGiovanni Bassi
 
Desenvolvimento Web com ASP.NET 4
Desenvolvimento Web com ASP.NET 4Desenvolvimento Web com ASP.NET 4
Desenvolvimento Web com ASP.NET 4Rodrigo Kono
 
O maravilhoso mundo dos webhooks
O maravilhoso mundo dos webhooksO maravilhoso mundo dos webhooks
O maravilhoso mundo dos webhooksRodrigo Kono
 
DotNet Framework e Orientação a Objetos 1 - Introdução
DotNet Framework e Orientação a Objetos 1 - IntroduçãoDotNet Framework e Orientação a Objetos 1 - Introdução
DotNet Framework e Orientação a Objetos 1 - IntroduçãoLorival Smolski Chapuis
 
Plataforma de compiladores .NET, Visual Studio 2015, C# 6 e futuro C# 7
Plataforma de compiladores .NET,Visual Studio 2015, C# 6 e futuro C# 7Plataforma de compiladores .NET,Visual Studio 2015, C# 6 e futuro C# 7
Plataforma de compiladores .NET, Visual Studio 2015, C# 6 e futuro C# 7Rogério Moraes de Carvalho
 
The Developer’s Conference (TDC) 2015 Florianópolis: O Entity Framework 7 na ...
The Developer’s Conference (TDC) 2015 Florianópolis: O Entity Framework 7 na ...The Developer’s Conference (TDC) 2015 Florianópolis: O Entity Framework 7 na ...
The Developer’s Conference (TDC) 2015 Florianópolis: O Entity Framework 7 na ...Rogério Moraes de Carvalho
 
Arquitetura de uma aplicação web moderna - MVP ShowCast
Arquitetura de uma aplicação web moderna - MVP ShowCastArquitetura de uma aplicação web moderna - MVP ShowCast
Arquitetura de uma aplicação web moderna - MVP ShowCastRodrigo Kono
 
TechLab de dotnet core no dotnetConf.local
TechLab de dotnet core no dotnetConf.localTechLab de dotnet core no dotnetConf.local
TechLab de dotnet core no dotnetConf.localRodrigo Kono
 
O futuro do desenvolvimento .NET
O futuro do desenvolvimento .NETO futuro do desenvolvimento .NET
O futuro do desenvolvimento .NETRodrigo Kono
 
Microservices com ASP.NET 5
Microservices com ASP.NET 5Microservices com ASP.NET 5
Microservices com ASP.NET 5Waldyr Felix
 
Uma visão de mercado das linguagens de programação
Uma visão de mercado das linguagens de programaçãoUma visão de mercado das linguagens de programação
Uma visão de mercado das linguagens de programaçãoRogério Moraes de Carvalho
 
ITerior - .NET Core, usando .NET no Linux!
ITerior - .NET Core, usando .NET no Linux!ITerior - .NET Core, usando .NET no Linux!
ITerior - .NET Core, usando .NET no Linux!Vinicius Mussak
 
MVP Virtual Conference (MVP V-Conf) 2015: Executando ASP.NET MVC 6 no Mac OS ...
MVP Virtual Conference (MVP V-Conf) 2015: Executando ASP.NET MVC 6 no Mac OS ...MVP Virtual Conference (MVP V-Conf) 2015: Executando ASP.NET MVC 6 no Mac OS ...
MVP Virtual Conference (MVP V-Conf) 2015: Executando ASP.NET MVC 6 no Mac OS ...Rogério Moraes de Carvalho
 
Por dentro do .NET Core
Por dentro do .NET CorePor dentro do .NET Core
Por dentro do .NET CoreGiovanni Bassi
 
Explorando o novo .NET multiplataforma: ASP.NET Core, .NET Core e EF Core
Explorando o novo .NET multiplataforma:ASP.NET Core, .NET Core e EF CoreExplorando o novo .NET multiplataforma:ASP.NET Core, .NET Core e EF Core
Explorando o novo .NET multiplataforma: ASP.NET Core, .NET Core e EF CoreRogério Moraes de Carvalho
 

Destacado (20)

O Projeto Mono: Aplicações .NET para sistemas não Windows
O Projeto Mono: Aplicações .NET para sistemas não WindowsO Projeto Mono: Aplicações .NET para sistemas não Windows
O Projeto Mono: Aplicações .NET para sistemas não Windows
 
Backend na nuvem com docker
Backend na nuvem com dockerBackend na nuvem com docker
Backend na nuvem com docker
 
TFS REST API e Universal Apps
TFS REST API e Universal AppsTFS REST API e Universal Apps
TFS REST API e Universal Apps
 
Desenvolvimento Web com ASP.NET 4
Desenvolvimento Web com ASP.NET 4Desenvolvimento Web com ASP.NET 4
Desenvolvimento Web com ASP.NET 4
 
Cebraspe 2016: .NET Core e ASP.NET Core
Cebraspe 2016: .NET Core e ASP.NET CoreCebraspe 2016: .NET Core e ASP.NET Core
Cebraspe 2016: .NET Core e ASP.NET Core
 
ASP.NET Identity
ASP.NET IdentityASP.NET Identity
ASP.NET Identity
 
O maravilhoso mundo dos webhooks
O maravilhoso mundo dos webhooksO maravilhoso mundo dos webhooks
O maravilhoso mundo dos webhooks
 
Tecnologias XML e XML no SQL Server 2016
Tecnologias XML eXML no SQL Server 2016Tecnologias XML eXML no SQL Server 2016
Tecnologias XML e XML no SQL Server 2016
 
DotNet Framework e Orientação a Objetos 1 - Introdução
DotNet Framework e Orientação a Objetos 1 - IntroduçãoDotNet Framework e Orientação a Objetos 1 - Introdução
DotNet Framework e Orientação a Objetos 1 - Introdução
 
Plataforma de compiladores .NET, Visual Studio 2015, C# 6 e futuro C# 7
Plataforma de compiladores .NET,Visual Studio 2015, C# 6 e futuro C# 7Plataforma de compiladores .NET,Visual Studio 2015, C# 6 e futuro C# 7
Plataforma de compiladores .NET, Visual Studio 2015, C# 6 e futuro C# 7
 
The Developer’s Conference (TDC) 2015 Florianópolis: O Entity Framework 7 na ...
The Developer’s Conference (TDC) 2015 Florianópolis: O Entity Framework 7 na ...The Developer’s Conference (TDC) 2015 Florianópolis: O Entity Framework 7 na ...
The Developer’s Conference (TDC) 2015 Florianópolis: O Entity Framework 7 na ...
 
Arquitetura de uma aplicação web moderna - MVP ShowCast
Arquitetura de uma aplicação web moderna - MVP ShowCastArquitetura de uma aplicação web moderna - MVP ShowCast
Arquitetura de uma aplicação web moderna - MVP ShowCast
 
TechLab de dotnet core no dotnetConf.local
TechLab de dotnet core no dotnetConf.localTechLab de dotnet core no dotnetConf.local
TechLab de dotnet core no dotnetConf.local
 
O futuro do desenvolvimento .NET
O futuro do desenvolvimento .NETO futuro do desenvolvimento .NET
O futuro do desenvolvimento .NET
 
Microservices com ASP.NET 5
Microservices com ASP.NET 5Microservices com ASP.NET 5
Microservices com ASP.NET 5
 
Uma visão de mercado das linguagens de programação
Uma visão de mercado das linguagens de programaçãoUma visão de mercado das linguagens de programação
Uma visão de mercado das linguagens de programação
 
ITerior - .NET Core, usando .NET no Linux!
ITerior - .NET Core, usando .NET no Linux!ITerior - .NET Core, usando .NET no Linux!
ITerior - .NET Core, usando .NET no Linux!
 
MVP Virtual Conference (MVP V-Conf) 2015: Executando ASP.NET MVC 6 no Mac OS ...
MVP Virtual Conference (MVP V-Conf) 2015: Executando ASP.NET MVC 6 no Mac OS ...MVP Virtual Conference (MVP V-Conf) 2015: Executando ASP.NET MVC 6 no Mac OS ...
MVP Virtual Conference (MVP V-Conf) 2015: Executando ASP.NET MVC 6 no Mac OS ...
 
Por dentro do .NET Core
Por dentro do .NET CorePor dentro do .NET Core
Por dentro do .NET Core
 
Explorando o novo .NET multiplataforma: ASP.NET Core, .NET Core e EF Core
Explorando o novo .NET multiplataforma:ASP.NET Core, .NET Core e EF CoreExplorando o novo .NET multiplataforma:ASP.NET Core, .NET Core e EF Core
Explorando o novo .NET multiplataforma: ASP.NET Core, .NET Core e EF Core
 

Similar a Suporte XML nativo no SQL Server 2014/2016

Similar a Suporte XML nativo no SQL Server 2014/2016 (20)

Aplicando Transformação em XML usando XSLT e XSL-FO - 1
Aplicando Transformação em XML usando XSLT e XSL-FO - 1Aplicando Transformação em XML usando XSLT e XSL-FO - 1
Aplicando Transformação em XML usando XSLT e XSL-FO - 1
 
Xml pucminas2013
Xml pucminas2013Xml pucminas2013
Xml pucminas2013
 
Introdução à XML - Serviço de Biblioteca da EEFE-USP
Introdução à XML - Serviço de Biblioteca da EEFE-USPIntrodução à XML - Serviço de Biblioteca da EEFE-USP
Introdução à XML - Serviço de Biblioteca da EEFE-USP
 
Banco de Dados XML
Banco de Dados XMLBanco de Dados XML
Banco de Dados XML
 
Parte5 xml
Parte5 xmlParte5 xml
Parte5 xml
 
JustJava 2004: JAXB
JustJava 2004: JAXBJustJava 2004: JAXB
JustJava 2004: JAXB
 
Tag Libraries e JSTL
Tag Libraries e JSTLTag Libraries e JSTL
Tag Libraries e JSTL
 
Aula Introdução a Linguagem XML
Aula Introdução a Linguagem XMLAula Introdução a Linguagem XML
Aula Introdução a Linguagem XML
 
XML - Parte 1
XML - Parte 1XML - Parte 1
XML - Parte 1
 
Arquitetura: XML + RDF ate WebSemantica
Arquitetura: XML + RDF ate WebSemanticaArquitetura: XML + RDF ate WebSemantica
Arquitetura: XML + RDF ate WebSemantica
 
Apostila de-vb-net
Apostila de-vb-netApostila de-vb-net
Apostila de-vb-net
 
Aplicando Transformação em XML usando XSLT e XSL-FO - 3
Aplicando Transformação em XML usando XSLT e XSL-FO - 3Aplicando Transformação em XML usando XSLT e XSL-FO - 3
Aplicando Transformação em XML usando XSLT e XSL-FO - 3
 
XML_WS.pdf
XML_WS.pdfXML_WS.pdf
XML_WS.pdf
 
Tp 4 xml
Tp 4   xmlTp 4   xml
Tp 4 xml
 
Pro php and xml web services xml canonical
Pro php and xml web services   xml canonicalPro php and xml web services   xml canonical
Pro php and xml web services xml canonical
 
01- Introdução ao XML
01- Introdução ao XML01- Introdução ao XML
01- Introdução ao XML
 
XML e Banco de Dados XML Nativo
XML e Banco de Dados XML NativoXML e Banco de Dados XML Nativo
XML e Banco de Dados XML Nativo
 
Conceitos de xml
Conceitos de xmlConceitos de xml
Conceitos de xml
 
Oracle XML DB
Oracle XML DBOracle XML DB
Oracle XML DB
 
Curso de xml
Curso de xmlCurso de xml
Curso de xml
 

Más de Rogério Moraes de Carvalho

TDC 2016 POA: O novo ASP.NET Core 1.0 multiplataforma
TDC 2016 POA: O novo ASP.NET Core 1.0 multiplataformaTDC 2016 POA: O novo ASP.NET Core 1.0 multiplataforma
TDC 2016 POA: O novo ASP.NET Core 1.0 multiplataformaRogério Moraes de Carvalho
 
dotnetConf 2016 Goiânia: .NET Core | ASP.NET Core
dotnetConf 2016 Goiânia: .NET Core | ASP.NET CoredotnetConf 2016 Goiânia: .NET Core | ASP.NET Core
dotnetConf 2016 Goiânia: .NET Core | ASP.NET CoreRogério Moraes de Carvalho
 
Visual Studio Summit 2016: C# 7 - Olhando para o futuro
Visual Studio Summit 2016: C# 7 - Olhando para o futuroVisual Studio Summit 2016: C# 7 - Olhando para o futuro
Visual Studio Summit 2016: C# 7 - Olhando para o futuroRogério Moraes de Carvalho
 
Um novo .NET multiplataforma: ASP.NET Core, .NET Core e Entity Framework Core
Um novo .NET multiplataforma:ASP.NET Core, .NET Core e Entity Framework CoreUm novo .NET multiplataforma:ASP.NET Core, .NET Core e Entity Framework Core
Um novo .NET multiplataforma: ASP.NET Core, .NET Core e Entity Framework CoreRogério Moraes de Carvalho
 
ASP.NET Core, .NET Core e EF Core: multiplataforma e otimizados para a nuvem
ASP.NET Core, .NET Core e EF Core: multiplataforma e otimizados para a nuvemASP.NET Core, .NET Core e EF Core: multiplataforma e otimizados para a nuvem
ASP.NET Core, .NET Core e EF Core: multiplataforma e otimizados para a nuvemRogério Moraes de Carvalho
 
Plataforma de compiladores .NET, C# 6 e Visual Studio 2015
Plataforma de compiladores .NET, C# 6 e Visual Studio 2015Plataforma de compiladores .NET, C# 6 e Visual Studio 2015
Plataforma de compiladores .NET, C# 6 e Visual Studio 2015Rogério Moraes de Carvalho
 
Plataforma de compiladores .NET (“Roslyn”), C# 6 e Visual Studio “14”
Plataforma de compiladores .NET (“Roslyn”), C# 6 e Visual Studio “14”Plataforma de compiladores .NET (“Roslyn”), C# 6 e Visual Studio “14”
Plataforma de compiladores .NET (“Roslyn”), C# 6 e Visual Studio “14”Rogério Moraes de Carvalho
 
Aplicações e serviços Web interoperáveis com o padrão Cross-Origin Resource S...
Aplicações e serviços Web interoperáveis com o padrão Cross-Origin Resource S...Aplicações e serviços Web interoperáveis com o padrão Cross-Origin Resource S...
Aplicações e serviços Web interoperáveis com o padrão Cross-Origin Resource S...Rogério Moraes de Carvalho
 
Programação assíncrona com C# 5 no Visual Studio 2013 [MVP ShowCast 2013 - DE...
Programação assíncrona com C# 5 no Visual Studio 2013 [MVP ShowCast 2013 - DE...Programação assíncrona com C# 5 no Visual Studio 2013 [MVP ShowCast 2013 - DE...
Programação assíncrona com C# 5 no Visual Studio 2013 [MVP ShowCast 2013 - DE...Rogério Moraes de Carvalho
 
SQLSaturday #253 | Brasília 2013 - Mapeamento Objeto-Relacional com o Entity ...
SQLSaturday #253 | Brasília 2013 - Mapeamento Objeto-Relacional com o Entity ...SQLSaturday #253 | Brasília 2013 - Mapeamento Objeto-Relacional com o Entity ...
SQLSaturday #253 | Brasília 2013 - Mapeamento Objeto-Relacional com o Entity ...Rogério Moraes de Carvalho
 
HTML5 + CSS3 em múltiplos browsers, em múltiplas plataformas e em múltiplos d...
HTML5 + CSS3 em múltiplos browsers, em múltiplas plataformas e em múltiplos d...HTML5 + CSS3 em múltiplos browsers, em múltiplas plataformas e em múltiplos d...
HTML5 + CSS3 em múltiplos browsers, em múltiplas plataformas e em múltiplos d...Rogério Moraes de Carvalho
 
The Developer's Conference (TDC) 2013 - São Paulo: Programação assíncrona com...
The Developer's Conference (TDC) 2013 - São Paulo: Programação assíncrona com...The Developer's Conference (TDC) 2013 - São Paulo: Programação assíncrona com...
The Developer's Conference (TDC) 2013 - São Paulo: Programação assíncrona com...Rogério Moraes de Carvalho
 
The Developer's Conference (TDC) 2013 - Florianópolis: HTML5 + CSS3 em múlti...
The Developer's Conference (TDC) 2013 - Florianópolis:  HTML5 + CSS3 em múlti...The Developer's Conference (TDC) 2013 - Florianópolis:  HTML5 + CSS3 em múlti...
The Developer's Conference (TDC) 2013 - Florianópolis: HTML5 + CSS3 em múlti...Rogério Moraes de Carvalho
 
MVP Virtual Conference 2013: Cenário do mundo real
MVP Virtual Conference 2013: Cenário do mundo realMVP Virtual Conference 2013: Cenário do mundo real
MVP Virtual Conference 2013: Cenário do mundo realRogério Moraes de Carvalho
 
MVP Virtual Conference 2013: Suporte a padrões Web
MVP Virtual Conference 2013: Suporte a padrões WebMVP Virtual Conference 2013: Suporte a padrões Web
MVP Virtual Conference 2013: Suporte a padrões WebRogério Moraes de Carvalho
 
Seminfo 2012 (Urutaí-GO): Desenvolvimento para dispositivos móveis
Seminfo 2012 (Urutaí-GO): Desenvolvimento para dispositivos móveisSeminfo 2012 (Urutaí-GO): Desenvolvimento para dispositivos móveis
Seminfo 2012 (Urutaí-GO): Desenvolvimento para dispositivos móveisRogério Moraes de Carvalho
 
TDC 2012 Goiânia: Trilha Windows Phone / Windows 8 - Desenvolvimento de apps ...
TDC 2012 Goiânia: Trilha Windows Phone / Windows 8 - Desenvolvimento de apps ...TDC 2012 Goiânia: Trilha Windows Phone / Windows 8 - Desenvolvimento de apps ...
TDC 2012 Goiânia: Trilha Windows Phone / Windows 8 - Desenvolvimento de apps ...Rogério Moraes de Carvalho
 
TDC 2012 Goiânia: Trilha .NET - Novidades do .NET Framework 4.5
TDC 2012 Goiânia: Trilha .NET - Novidades do .NET Framework 4.5TDC 2012 Goiânia: Trilha .NET - Novidades do .NET Framework 4.5
TDC 2012 Goiânia: Trilha .NET - Novidades do .NET Framework 4.5Rogério Moraes de Carvalho
 

Más de Rogério Moraes de Carvalho (20)

Docker com ASP.NET Core e Hospedagem no Azure
Docker com ASP.NET Core e Hospedagem no AzureDocker com ASP.NET Core e Hospedagem no Azure
Docker com ASP.NET Core e Hospedagem no Azure
 
TDC 2016 POA: O novo ASP.NET Core 1.0 multiplataforma
TDC 2016 POA: O novo ASP.NET Core 1.0 multiplataformaTDC 2016 POA: O novo ASP.NET Core 1.0 multiplataforma
TDC 2016 POA: O novo ASP.NET Core 1.0 multiplataforma
 
dotnetConf 2016 Goiânia: .NET Core | ASP.NET Core
dotnetConf 2016 Goiânia: .NET Core | ASP.NET CoredotnetConf 2016 Goiânia: .NET Core | ASP.NET Core
dotnetConf 2016 Goiânia: .NET Core | ASP.NET Core
 
Visual Studio Summit 2016: C# 7 - Olhando para o futuro
Visual Studio Summit 2016: C# 7 - Olhando para o futuroVisual Studio Summit 2016: C# 7 - Olhando para o futuro
Visual Studio Summit 2016: C# 7 - Olhando para o futuro
 
Um novo .NET multiplataforma: ASP.NET Core, .NET Core e Entity Framework Core
Um novo .NET multiplataforma:ASP.NET Core, .NET Core e Entity Framework CoreUm novo .NET multiplataforma:ASP.NET Core, .NET Core e Entity Framework Core
Um novo .NET multiplataforma: ASP.NET Core, .NET Core e Entity Framework Core
 
ASP.NET Core, .NET Core e EF Core: multiplataforma e otimizados para a nuvem
ASP.NET Core, .NET Core e EF Core: multiplataforma e otimizados para a nuvemASP.NET Core, .NET Core e EF Core: multiplataforma e otimizados para a nuvem
ASP.NET Core, .NET Core e EF Core: multiplataforma e otimizados para a nuvem
 
Plataforma de compiladores .NET, C# 6 e Visual Studio 2015
Plataforma de compiladores .NET, C# 6 e Visual Studio 2015Plataforma de compiladores .NET, C# 6 e Visual Studio 2015
Plataforma de compiladores .NET, C# 6 e Visual Studio 2015
 
Plataforma de compiladores .NET (“Roslyn”), C# 6 e Visual Studio “14”
Plataforma de compiladores .NET (“Roslyn”), C# 6 e Visual Studio “14”Plataforma de compiladores .NET (“Roslyn”), C# 6 e Visual Studio “14”
Plataforma de compiladores .NET (“Roslyn”), C# 6 e Visual Studio “14”
 
Aplicações e serviços Web interoperáveis com o padrão Cross-Origin Resource S...
Aplicações e serviços Web interoperáveis com o padrão Cross-Origin Resource S...Aplicações e serviços Web interoperáveis com o padrão Cross-Origin Resource S...
Aplicações e serviços Web interoperáveis com o padrão Cross-Origin Resource S...
 
Programação assíncrona com C# 5 no Visual Studio 2013 [MVP ShowCast 2013 - DE...
Programação assíncrona com C# 5 no Visual Studio 2013 [MVP ShowCast 2013 - DE...Programação assíncrona com C# 5 no Visual Studio 2013 [MVP ShowCast 2013 - DE...
Programação assíncrona com C# 5 no Visual Studio 2013 [MVP ShowCast 2013 - DE...
 
SQLSaturday #253 | Brasília 2013 - Mapeamento Objeto-Relacional com o Entity ...
SQLSaturday #253 | Brasília 2013 - Mapeamento Objeto-Relacional com o Entity ...SQLSaturday #253 | Brasília 2013 - Mapeamento Objeto-Relacional com o Entity ...
SQLSaturday #253 | Brasília 2013 - Mapeamento Objeto-Relacional com o Entity ...
 
`
``
`
 
HTML5 + CSS3 em múltiplos browsers, em múltiplas plataformas e em múltiplos d...
HTML5 + CSS3 em múltiplos browsers, em múltiplas plataformas e em múltiplos d...HTML5 + CSS3 em múltiplos browsers, em múltiplas plataformas e em múltiplos d...
HTML5 + CSS3 em múltiplos browsers, em múltiplas plataformas e em múltiplos d...
 
The Developer's Conference (TDC) 2013 - São Paulo: Programação assíncrona com...
The Developer's Conference (TDC) 2013 - São Paulo: Programação assíncrona com...The Developer's Conference (TDC) 2013 - São Paulo: Programação assíncrona com...
The Developer's Conference (TDC) 2013 - São Paulo: Programação assíncrona com...
 
The Developer's Conference (TDC) 2013 - Florianópolis: HTML5 + CSS3 em múlti...
The Developer's Conference (TDC) 2013 - Florianópolis:  HTML5 + CSS3 em múlti...The Developer's Conference (TDC) 2013 - Florianópolis:  HTML5 + CSS3 em múlti...
The Developer's Conference (TDC) 2013 - Florianópolis: HTML5 + CSS3 em múlti...
 
MVP Virtual Conference 2013: Cenário do mundo real
MVP Virtual Conference 2013: Cenário do mundo realMVP Virtual Conference 2013: Cenário do mundo real
MVP Virtual Conference 2013: Cenário do mundo real
 
MVP Virtual Conference 2013: Suporte a padrões Web
MVP Virtual Conference 2013: Suporte a padrões WebMVP Virtual Conference 2013: Suporte a padrões Web
MVP Virtual Conference 2013: Suporte a padrões Web
 
Seminfo 2012 (Urutaí-GO): Desenvolvimento para dispositivos móveis
Seminfo 2012 (Urutaí-GO): Desenvolvimento para dispositivos móveisSeminfo 2012 (Urutaí-GO): Desenvolvimento para dispositivos móveis
Seminfo 2012 (Urutaí-GO): Desenvolvimento para dispositivos móveis
 
TDC 2012 Goiânia: Trilha Windows Phone / Windows 8 - Desenvolvimento de apps ...
TDC 2012 Goiânia: Trilha Windows Phone / Windows 8 - Desenvolvimento de apps ...TDC 2012 Goiânia: Trilha Windows Phone / Windows 8 - Desenvolvimento de apps ...
TDC 2012 Goiânia: Trilha Windows Phone / Windows 8 - Desenvolvimento de apps ...
 
TDC 2012 Goiânia: Trilha .NET - Novidades do .NET Framework 4.5
TDC 2012 Goiânia: Trilha .NET - Novidades do .NET Framework 4.5TDC 2012 Goiânia: Trilha .NET - Novidades do .NET Framework 4.5
TDC 2012 Goiânia: Trilha .NET - Novidades do .NET Framework 4.5
 

Último

ATIVIDADE 1 - ESTRUTURA DE DADOS II - 52_2024.docx
ATIVIDADE 1 - ESTRUTURA DE DADOS II - 52_2024.docxATIVIDADE 1 - ESTRUTURA DE DADOS II - 52_2024.docx
ATIVIDADE 1 - ESTRUTURA DE DADOS II - 52_2024.docx2m Assessoria
 
Padrões de Projeto: Proxy e Command com exemplo
Padrões de Projeto: Proxy e Command com exemploPadrões de Projeto: Proxy e Command com exemplo
Padrões de Projeto: Proxy e Command com exemploDanilo Pinotti
 
Luís Kitota AWS Discovery Day Ka Solution.pdf
Luís Kitota AWS Discovery Day Ka Solution.pdfLuís Kitota AWS Discovery Day Ka Solution.pdf
Luís Kitota AWS Discovery Day Ka Solution.pdfLuisKitota
 
Programação Orientada a Objetos - 4 Pilares.pdf
Programação Orientada a Objetos - 4 Pilares.pdfProgramação Orientada a Objetos - 4 Pilares.pdf
Programação Orientada a Objetos - 4 Pilares.pdfSamaraLunas
 
ATIVIDADE 1 - SISTEMAS DISTRIBUÍDOS E REDES - 52_2024.docx
ATIVIDADE 1 - SISTEMAS DISTRIBUÍDOS E REDES - 52_2024.docxATIVIDADE 1 - SISTEMAS DISTRIBUÍDOS E REDES - 52_2024.docx
ATIVIDADE 1 - SISTEMAS DISTRIBUÍDOS E REDES - 52_2024.docx2m Assessoria
 
Boas práticas de programação com Object Calisthenics
Boas práticas de programação com Object CalisthenicsBoas práticas de programação com Object Calisthenics
Boas práticas de programação com Object CalisthenicsDanilo Pinotti
 
ATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docx
ATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docxATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docx
ATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docx2m Assessoria
 
ATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docx
ATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docxATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docx
ATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docx2m Assessoria
 
ATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docx
ATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docxATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docx
ATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docx2m Assessoria
 

Último (9)

ATIVIDADE 1 - ESTRUTURA DE DADOS II - 52_2024.docx
ATIVIDADE 1 - ESTRUTURA DE DADOS II - 52_2024.docxATIVIDADE 1 - ESTRUTURA DE DADOS II - 52_2024.docx
ATIVIDADE 1 - ESTRUTURA DE DADOS II - 52_2024.docx
 
Padrões de Projeto: Proxy e Command com exemplo
Padrões de Projeto: Proxy e Command com exemploPadrões de Projeto: Proxy e Command com exemplo
Padrões de Projeto: Proxy e Command com exemplo
 
Luís Kitota AWS Discovery Day Ka Solution.pdf
Luís Kitota AWS Discovery Day Ka Solution.pdfLuís Kitota AWS Discovery Day Ka Solution.pdf
Luís Kitota AWS Discovery Day Ka Solution.pdf
 
Programação Orientada a Objetos - 4 Pilares.pdf
Programação Orientada a Objetos - 4 Pilares.pdfProgramação Orientada a Objetos - 4 Pilares.pdf
Programação Orientada a Objetos - 4 Pilares.pdf
 
ATIVIDADE 1 - SISTEMAS DISTRIBUÍDOS E REDES - 52_2024.docx
ATIVIDADE 1 - SISTEMAS DISTRIBUÍDOS E REDES - 52_2024.docxATIVIDADE 1 - SISTEMAS DISTRIBUÍDOS E REDES - 52_2024.docx
ATIVIDADE 1 - SISTEMAS DISTRIBUÍDOS E REDES - 52_2024.docx
 
Boas práticas de programação com Object Calisthenics
Boas práticas de programação com Object CalisthenicsBoas práticas de programação com Object Calisthenics
Boas práticas de programação com Object Calisthenics
 
ATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docx
ATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docxATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docx
ATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docx
 
ATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docx
ATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docxATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docx
ATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docx
 
ATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docx
ATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docxATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docx
ATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docx
 

Suporte XML nativo no SQL Server 2014/2016

  • 1. SQLServerDF Suporte XML nativo no SQL Server 2014/2016 Rogério Moraes de Carvalho Consultor e instrutor de TI rogeriom.wordpress.com | @rogeriomc
  • 2. Agenda Suporte XML nativo no SQL Server 2014/2016 Debate inicial Suas experiências: XML e SQL Server XML e tecnologias relacionadas O que é XML? XML bem-formado XML Schema e XML válido XPath e XQuery Algumas aplicações de XML Suporte XML no SQL Server Tipo de dado XML nativo XML Schema Collections Métodos do tipo de dados XML Cláusula FOR XML Debate final Minhas experiências: XML e SQL Server
  • 3. Suas experiências: XML e SQL Server Debate inicial XML sem SQL Server Suas opiniões O que você entende por XML? Quando você usaria XML? Você acha XML obsoleto? Que desvantagens você destacaria? Que vantagens você destacaria? Casos de uso Você tem casos de sucesso? Você tem casos de fracasso? XML no SQL Server Suas opiniões Você acha uma mistura possível? Quando você usaria XML no SQL Server? Você acha XML no SQL Server obsoleto? Que desvantagens você destacaria? Que vantagens você destacaria? Casos de uso Você tem casos de fracasso? Você tem casos de sucesso?
  • 4. O que é XML? XML e tecnologias relacionadas Linguagem de marcação XML: Extensible Markup Language Formato texto simples e flexível Derivado do SGML Criação e manutenção W3C: World Wide Web Consortium Comunidade internacional responsável pelo desenvolvimento de padrões Web Responsável pela especificação XML Exemplo de documento XML <?xml version="1.0" enconding="ISO-8859-1"?> <Contato Id="1" Sexo="Feminino" DataNascimento="1980-10-29"> <PrimeiroNome>Beatrice</PrimeiroNome> <Sobrenome>Dias Lima</Sobrenome> <Empresa Funcao="Gerente de Marketing"> Grupo Capivara </Empresa> <Endereco Tipo="Residencial" CEP="08830-170" UF="SP"> <Logradouro Numero="1507"> Rua João Fernandes </Logradouro> <Cidade>Mogi das Cruzes</Cidade> </Endereco> </Contato>
  • 5. XML bem formado XML e tecnologias relacionadas Todo documento XML com uma sintaxe correta Principais regras para um documento bem formado Deve ter um elemento raiz, que deve ser único Todo elemento XML deve ter um marcador de abertura e outro de fechamento Os marcadores de um elemento diferenciam letras maiúsculas de minúsculas Elementos XML devem ser aninhados corretamente Atributos de um elemento não podem ser repetidos Valores de atributos devem ser delimitados por aspas ou apóstrofos
  • 6. XML Schema e XML válido XML e tecnologias relacionadas XSD: XML Schema Definition Linguagem baseada em XML para expressar as restrições de documentos XML Define uma gramática para um conjunto de documentos XML Um documento XML que satisfaz um XML Schema é denominado XML válido
  • 7. XPath e XQuery XML e tecnologias relacionadas XPath É uma sintaxe para definir partes de um documento XML Usa expressões de caminho para navegar por documentos XML Contém uma biblioteca padrão de funções Recomendação do W3C: XML Path Language (XPath) 2.0 (Second Edition) XQuery É a linguagem padrão para consulta de dados XML XQuery é para XML o que SQL é para bancos de dados relacionais É construída com base em expressões XPath Recomendação do W3C: XQuery 1.0: An XML Query Language (Second Edition)
  • 8. Algumas aplicações de XML XML e tecnologias relacionadas Arquivos de configuração Web.config (aplicações web ASP.NET) Documentos de software para escritório Microsoft Office 2007 ou superior (compactados no formato .zip) OpenDocument - OpenOffice/LibreOffice (compactados no formato .zip) Imagens vetoriais SVG (Scalable Vector Graphics) XML Web Services Mensagens SOAP ...
  • 9. Tipo de dado XML nativo Suporte XML no SQL Server Tipo de dado do SQL Server para armazenar dados XML Instâncias de dados XML podem ser armazenados em: Uma coluna do tipo XML Uma variável do tipo XML Exemplos DECLARE @telefone xml = '<Telefone DDD="61">3222-2222</Telefone>'; CREATE TABLE Seguranca.Auditoria (IdAuditoria int PRIMARY KEY, Registro xml); Sintaxe xml ( [ CONTENT | DOCUMENT ] xml_schema_collection )
  • 10. XML Schema Collections Suporte XML no SQL Server O SQL Server fornece armazenamento nativo para dados XML Através do tipo de dado XML Com uso de XML Schema Collection é possível associar esquemas XSD Com uma coluna do tipo xml Com uma variável do tipo xml XML Schema Collections Armazenam XML Schemas importados para o banco de dados Objetivo dos XML Schema Collections Validar instâncias XML Definir tipo para os dados XML armazenados no banco de dados (XML tipado)
  • 11. Métodos do tipo de dados XML Suporte XML no SQL Server Objetivos dos métodos Para consultar uma instância XML armazenada em uma variável ou uma coluna do tipo XML Cinco métodos do tipo XML query() value() exist() modify() nodes() Método query() do tipo XML Descrição Consulta XQuery em uma instância XML Retorna um XML não tipado Sintaxe query('Xquery') Método value() do tipo XML Descrição Consulta XQuery em uma instância XML Retorna um valor escalar do tipo SQL Sintaxe value('Xquery', 'TipoSQL')
  • 12. Métodos do tipo de dados xml Suporte XML no SQL Server Método exist() do tipo xml Descrição Consulta XQuery em uma instância XML Retorna um bit 1: representa true (resultado não vazio) 0: representa false (resultado vazio) NULL: instância XML nula (valor NULL) Sintaxe exist('Xquery') Método modify() do tipo xml Descrição Modifica o conteúdo de uma instância XML Utiliza XML Data Manipulation Language XML DML: extensão da Microsoft ao XQuery Sintaxe modify('XML DML') XML DML: insert Sintaxe insert Expressao1 [ as first | as last ] into | after | before Expressao2
  • 13. Métodos do tipo de dados xml Suporte XML no SQL Server Método modify() do tipo xml Sintaxe modify('XML DML') XML DML: delete Sintaxe delete Expressao XML DML: replace value of Sintaxe replace value of Expressao1 with Expressao2 Método nodes() do tipo xml Descrição Útil para separar conteúdo de uma instância XML em dados relacionais Sintaxe nodes('XQuery') as Tabela(Coluna)
  • 14. Cláusula FOR XML Suporte XML no SQL Server Uma consulta SELECT retorna o resultado como um conjunto de linhas Opcionalmente, é possível retornar o resultado como XML Pela especificação da cláusula FOR XML A cláusula FOR XML pode ser usada em consultas ou subconsultas Em subconsultas, pode ser usado em instruções INSERT, UPDATE e DELETE Modos da cláusula FOR XML RAW: gera um elemento <row> por linha no conjunto de linhas AUTO: gera um resultado aninhado baseado na instrução SELECT EXPLICIT: permite maior controle do XML gerado PATH: permite maior controle do XML gerado, porém mais simples que EXPLICIT
  • 15. Minhas experiências: XML e SQL Server Debate final XML sem SQL Server Minhas opiniões O que eu entendo por XML? Quando eu usaria XML? Eu acho XML obsoleto? Que desvantagens eu destacaria? Que vantagens eu destacaria? Casos de uso Eu tenho casos de sucesso? Eu tenho casos de fracasso? XML no SQL Server Minhas opiniões Eu acho uma mistura possível? Quando eu usaria XML no SQL Server? Eu acho XML no SQL Server obsoleto? Que desvantagens eu destacaria? Que vantagens eu destacaria? Casos de uso Eu tenho casos de fracasso? Eu tenho casos de sucesso?