Free cookie consent management tool by TermsFeed Policy Generator
  • SQL Server Video
  •    47 page views
  •   4597 video views
  • 2024, May 27, Monday

#020 How to read Electronic Invoice XML File in SQL Server

Apresentamos nesse vídeo como ler o arquivo XML de nota fiscal eletrônica utilizando o SQL Server.

Iremos conhecer as técnicas:

1. Ler o conteúdo do arquivo em formato XML (SELECT, OPENROWSET, BULK, SINGLE_BLOB):

  • Utilize a instrução SELECT com OPENROWSET e BULK para ler o conteúdo do arquivo XML. Por exemplo:
    SELECT * FROM OPENROWSET(BULK 'C:CaminhoParaArquivo.xml', SINGLE_BLOB) AS xmlData;
    

2. Converter tipo de dados de texto em XML (CAST, XML):

  • Converta um campo de texto para o tipo de dados XML usando CAST ou CONVERT. Exemplo:
    CAST(' <root><item>Conteúdo</item></root> ' AS XML) AS xmlColumn;
    

3. Definir a estrutura do arquivo XML (XMLNAMESPACES, DEFAULT):

  • Declare os namespaces XML que serão utilizados na consulta. Exemplo:
    WITH XMLNAMESPACES(DEFAULT 'http://www.w3.org/2001/XMLSchema-instance')
    

4. Obter a hierarquia dos dados (CROSS APPLY, NODES):

  • Utilize CROSS APPLY com o método nodes para extrair a hierarquia dos dados XML. Exemplo:
    SELECT
        XmlColumn.value('(Path/To/Element)[1]', 'DataType') AS ColumnAlias
    FROM
        YourTable
        CROSS APPLY XmlColumn.nodes('/Root/ParentNode') AS Nodes(XmlColumn);
    

5. Obter os valores das colunas (VALUE):

  • Utilize o método value para obter o valor de um nó específico no XML. Exemplo:
    XmlColumn.value('(Path/To/Element)[1]', 'DataType') AS ColumnAlias
    

6. Inserir os dados selecionados em tabela auto-criada (INTO, FROM):

  • Insira os dados XML selecionados em uma tabela auto-criada. Exemplo:
    INSERT INTO NewTable (Column1, Column2)
    SELECT
        XmlColumn.value('(Path/To/Element1)[1]', 'DataType') AS Column1,
        XmlColumn.value('(Path/To/Element2)[1]', 'DataType') AS Column2
    FROM
        YourTable;
    

Estes são passos comuns ao lidar com dados XML no Microsoft SQL Server, adaptáveis de acordo com a estrutura específica do seu XML e requisitos da consulta.

This content contains
  • Content Video
  • Language Portuguese
  • Duration 11m 7s
  • Subtitles Não

  • Reading time 1 min 24 seg

avatar
Fabio Santos

Data Scientist and Consultant for Digital and Analytics Solutions


  • Share

Youtube Channel

@fabioms

Subscribe now