quarta-feira, 25 de maio de 2011

Exportar banco de dados para XML

Em vários momentos, percebemos necessidade do usuário da aplicação, exportar as informações de um banco de dados para um arquivo externo. Um dos formatos que vem sendo muito utilizado em .NET, é o arquivo XML (Extensible Markup Language).

XML (Extensible Markup Language) é uma recomendação da W3C para gerar linguagens de marcação para necessidades especiais.
É um subtipo de SGML (acrônimo de Standard Generalized Markup Language, ou Linguagem Padronizada de Marcação Genérica) capaz de descrever diversos tipos de dados. Seu propósito principal é a facilidade de compartilhamento de informações através da Internet.
Entre linguagens baseadas em XML incluem-se XHTML (formato para páginas Web), RDF,SDMX ,SMILMathML (formato para expressões matemáticas), NCLXBRLXSIL e SVG (formato gráfico vetorial). A principal característica do XML, de criar uma infra-estrutura ú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.
Fonte: http://pt.wikipedia.org/wiki/XML

Para demonstrar a exportação para XML, iremos utilizar uma base Access (MDB) e o Visual Studio 2010 Ultimate em linguagem C#. Para fazer download da base de dados, acesse o endereço abaixo:


Abra o VS e crie um novo projeto (File > New > Project) do tipo Windows Forms Application em linguagem C#.


Acesse a Toolbox, na guia Common Controls e adicione um controle Button no formulário Form1. Altere a propriedade Text para “Exportar MDB para XML”.



Dê um duplo-clique sobre o botão e escreva o trecho de código abaixo no evento Click.

using System.Data.OleDb;


private void button1_Click(object sender, EventArgs e)
{
    string conStr = "Provider=Microsoft.Jet.OleDb.4.0; Data     Source=C:\\Publico\\Northwind.mdb";
    string query = "Select FirstName, LastName, Address, City From Employees";
    using (OleDbDataAdapter da = new OleDbDataAdapter(query, conStr))
    {
        DataSet ds = new DataSet();
        da.Fill(ds, "Employees");
        ds.WriteXml("C:\\Publico\\Employees.xml");
    }
    MessageBox.Show("Exportação para XML concluída com êxito!");
}

A rotina acima, basicamente, se conecta na base Northwind.mdb que está alocada no caminho “C:\Publico” e faz uma consulta na tabela “Employees” (Funcionários). Em seguida, executou-se o comando no banco de dados e armazenou-se o resultado da consulta em um objeto DataSet. Através do método WriteXml, é que conseguimos converter o resultado para XML. Compile o projeto e teste a aplicação.



Segue a imagem do arquivo XML gerado após a execução do programa.



Fico por aqui e até a próxima!

Nenhum comentário:

Postar um comentário

Deixe aqui seu comentário