criar XML a partir do MySQL é tão fácil quanto o PI
o MySQL é uma escolha popular entre os bancos de dados, especialmente para dados Webcentric. Agora, há outro motivo para amar esse banco de dados—ele torna a integração de seus dados em um documento XML tão fácil quanto o pie. Infelizmente, importar XML para o MySQL é mais como cheesecake de chocolate, mas existem soluções disponíveis. Basta seguir este guia e você estará no seu caminho para integrar serviços da Web com seu banco de dados em nenhum momento.
começando do zero
com a crescente popularidade do XML, os desenvolvedores encontraram um método fácil de apresentar conjuntos de dados de maneira padronizada. Como mais isso soa? Uma base de dados! É natural que seja simples converter suas informações sem muita confusão—e você pode.Alguns fabricantes de bancos de dados proprietários, como Microsoft e IBM, tomaram medidas para integrar XML em seus sistemas. Isso não é surpresa, pois essas duas empresas estão fortemente envolvidas no projeto de padronização XML.
não querendo ser deixado para trás, os criadores do banco de dados MySQL incorporaram um meio para gerar um arquivo de dados XML. É suportado na versão 3.23.48 e superior. Você pode usar a linha de comando ou facilitar o processo com a linguagem de programação de sua escolha.
para começar, você pode baixar o banco de dados MySQL gratuitamente MySQL.com. a versão atual é suficiente para suportar esse recurso e você não precisa compilá-lo com nenhum parâmetro especial.
Frutas de enchimento
uma Vez que você está instalada, criado e preenchido o seu banco de dados, execute o seguinte comando para gerar um arquivo XML:
mysqldump –xml databasename
Se você gostaria de guardar isso para um arquivo, basta utilizar o padrão do *NIX método de saída para um arquivo:
mysqldump –xml databasename > nome do arquivo.xml
isso produz um documento XML bem formado. Como o XML é datacêntrico, se você despejar todo o seu banco de dados e ele não contiver informações, seu arquivo resultará em uma série de tags vazias com base nos nomes das tabelas. Sua saída deve ser algo assim:
<?versão xml=”1.0″?>
<table1>
<field1>data1</field1>
<field2>data1</field2>
<field3>data1</field3>
<field1>data2</field1>
<field2>data2</field2>
<field3>data2</field3>
</table1>
<table2></table2>
Agora você está livre para usar este arquivo de dados com qualquer aplicativo que você deseja. Este método é útil de várias maneiras. Ele não apenas criará uma representação padronizada de seus dados, mas também poderá tirar um instantâneo de seu banco de dados (ou parte de seu banco de dados) para exibição. Em vez de fazer chamadas repetidas para o servidor de banco de dados, basta gerar um documento XML quando seu banco de dados mudar e referenciar isso de páginas da Web ou o que você estiver usando. Isso pode localizar chamadas de dados, reduzir a sobrecarga de chamadas frequentes para um banco de dados e apresentar facilmente um subconjunto de suas informações para melhorar o desempenho, a segurança ou a localização.
sorvete ao lado
é realmente fácil obter XML do MySQL, mas e a outra direção? Isso é um pouco mais complicado. O MySQL em si não suporta essa função e por um bom motivo. O banco de dados atualmente não tem como validar o arquivo XML. Isso pode resultar em vários cenários, desde uma carga parcial até ignorar tags e instruções malformadas e simplesmente forçar a falha de toda a carga. O MySQL suporta apenas back-outs em cascata nas versões atuais de desenvolvimento. Embora não seja bonito do ponto de vista nativo, você tem algumas opções.
uma solução é o DBIx da Perl::Módulo XML_RDB. Você pode usar esse método para importar e exportar XML, embora compreensivelmente a importação dependa fortemente de um arquivo XML estruturado corretamente. Para obter os dados, o módulo executa essencialmente uma consulta e formata os resultados em um arquivo XML. Por outro lado, você pode usar o módulo para ler um arquivo XML, criar uma consulta SQL e executá-lo. Também existe uma opção mais simples. O módulo DBIx:: xml_rdb é fornecido com dois scripts de utilidade para facilitar o processo: xml2sql.pl e sql2xml.pl. eu encontrei um ótimo tutorial sobre como usar este módulo Perl no O’Reilly XML.com Web site. Ele irá guiá-lo através do processo.Outro esforço mais generalizado vem do projeto XML-DBMS de Ron Bourret. Este é um esforço contínuo para suportar importações e exportações XML com bancos de dados relacionais usando Perl e Java. Há também algum trabalho muito interessante que suporta o mapeamento de um banco de dados para outro usando XML como facilitar middleware. Este é um projeto de código aberto orientado para a comunidade que está sendo gerenciado no SourceForge.
outras linguagens, particularmente web scripting languages, também não ignoraram a necessidade de importar XML para Bancos de dados SQL. Existem esforços semelhantes para Python, como os módulos xml2sql e dtd2sql, descritos em detalhes neste artigo da IBM, e alguns projetos em andamento para PHP, como o projeto “XML MySQL class”.
Scrumptious
com esses utilitários, importar e exportar XML de e para o MySQL é fácil! Como o MySQL é popular e gratuito, Tem sido o test bed para integrar muitas linguagens de script em XML e, como resultado, há vários tutoriais e scripts específicos para esse banco de dados. Com o poder de um banco de dados relacional e a capacidade de criar facilmente arquivos XML, o MySQL pode ser parte integrante da sua solução de serviços da Web.
você gostaria de uma fatia?
quais são suas experiências com XML e bancos de dados relacionais? Junte-se à discussão abaixo ou envie-nos um e-mail com seus pensamentos.