januari 3, 2022

het maken van XML van MySQL is zo eenvoudig als PI

MySQL is een populaire keuze onder databases, vooral voor Webcentric data. Nu is er nog een reden om van deze database te houden—het maakt het integreren van uw gegevens in een XML-document zo eenvoudig als taart. Helaas, het importeren van XML in MySQL is meer als chocolade cheesecake, maar er zijn oplossingen beschikbaar. Volg gewoon deze gids en je bent op weg naar het integreren van webservices met uw database in een mum van tijd.
vanaf het begin
met de groeiende populariteit van XML hebben ontwikkelaars een eenvoudige methode gevonden om datasets op een gestandaardiseerde manier te presenteren. Hoe klinkt dat nog meer? Een database! Het is alleen maar natuurlijk dat het eenvoudig moet zijn om uw informatie te converteren zonder veel gedoe—en je kunt.
Sommige eigen databasefabrikanten, zoals Microsoft en IBM, hebben stappen ondernomen om XML in hun systemen te integreren. Dit komt niet als een verrassing aangezien deze twee bedrijven beide sterk betrokken zijn bij het XML standaardisatie project.
omdat de makers van de MySQL-database niet achter wilden blijven, gebruikten ze een middel om een XML-gegevensbestand te genereren. Het wordt ondersteund in versie 3.23.48 en hoger. U kunt de opdrachtregel gebruiken of het proces vergemakkelijken met de programmeertaal van uw keuze.
om te beginnen kunt u de MySQL-database gratis downloaden vanaf MySQL.com. de huidige release is voldoende om deze functie te ondersteunen, en je hoeft niet om het te compileren met speciale parameters.
fruitvulling
zodra u uw database hebt geïnstalleerd, aangemaakt en gevuld, voert u het volgende commando uit om een XML-bestand te genereren:
mysqldump –xml databasename
als u dit in een bestand wilt opslaan, gebruik dan gewoon de standaard *NIX-methode om naar een bestand uit te voeren:
mysqldump –xml databasename > bestandsnaam.xml
dit produceert een goed gevormd XML-document. Omdat XML datacenter is, zal als je je hele database dumpt en het bevat geen informatie, je bestand resulteren in een reeks lege tags op basis van de tabelnamen. Uw uitvoer moet er ongeveer zo uitzien:
<?xml versie = “1.0”?>
<table1>
<field1>data1</field1>
<field2>data1</field2>
<field3>data1</field3>
<field1>data2</field1>
<field2>data2</field2>
<field3>data2</field3>
</table1>
<table2></table2>
Nu ben je vrij om gebruik van deze gegevens bestand met alle toepassingen die u wenst. Deze methode is nuttig op een aantal manieren. Niet alleen zal het een gestandaardiseerde weergave van uw gegevens te creëren, maar het kan ook een momentopname van uw database (of een deel van uw database) voor weergave. In plaats van het maken van herhaalde oproepen naar de database server, gewoon het genereren van een XML-document wanneer uw database verandert en referentie dat van webpagina ‘ s of wat je ook gebruikt. Dit kan oproepen voor gegevens lokaliseren, de overhead van frequente oproepen naar een database verminderen en eenvoudig een subset van uw informatie presenteren voor verbeterde prestaties, beveiliging of lokalisatie.

Ice cream on the side
het is heel gemakkelijk om XML van MySQL te krijgen, maar hoe zit het met de andere richting? Dat is lastiger. MySQL zelf ondersteunt deze functie niet, en met goede reden. De database heeft momenteel geen manier om het XML-bestand te valideren. Dit kan resulteren in een aantal scenario ‘ s, variërend van een gedeeltelijke belasting tot het negeren van misvormde tags en statements tot het simpelweg forceren van de volledige belasting om te mislukken. MySQL ondersteunt alleen cascading back-outs in de huidige ontwikkelingsversies. Hoewel het niet mooi is vanuit een native standpunt, heb je een aantal opties.
Eén oplossing is Perl ‘ s DBIx::Xml_rdb-module. U kunt deze methode gebruiken om zowel importeren als exporteren XML, hoewel begrijpelijk de import is sterk afhankelijk van een correct gestructureerd XML-bestand. Om de gegevens te krijgen, de module draait in wezen een query en formatteert de resultaten in een XML-bestand. Omgekeerd kunt u de module gebruiken om een XML-bestand te lezen, een SQL-query aan te maken en uit te voeren. Er is ook een eenvoudigere optie. De DBIX:: XML_RDB module wordt geleverd met twee hulpprogramma scripts om het proces te vergemakkelijken: xml2sql.pl en sql2xml.pl ik vond een geweldige tutorial over het gebruik van deze Perl module bij O ‘Reilly’ s XML.com website. Het zal je door het proces leiden.
een andere, meer algemene inspanning komt van Ron Bourret ‘ s XML-DBMS project. Dit is een voortdurende inspanning om XML import en export te ondersteunen met relationele databases met behulp van Perl en Java. Er is ook een aantal zeer interessant werk dat ondersteunt het in kaart brengen van een database naar een andere met behulp van XML als het faciliteren van middleware. Dit is een community-georiënteerd open source project dat wordt beheerd op SourceForge.
andere talen, in het bijzonder web scripttalen, hebben de noodzaak om XML te importeren in SQL databases ook niet genegeerd. Er zijn soortgelijke inspanningen voor Python, zoals de xml2sql en dtd2sql modules, in detail beschreven in dit artikel van IBM, en een paar projecten in de works voor PHP, zoals de “XML MySQL class” project.
Scrumptious
met deze hulpprogramma ‘ s is het importeren en exporteren van XML naar en van MySQL eenvoudig! Omdat MySQL populair en gratis is, is het de testbed voor het integreren van vele scripttalen in XML, en als gevolg daarvan zijn er een aantal tutorials en scripts specifiek voor deze database. Met de kracht van een relationele database en de mogelijkheid om gemakkelijk XML-bestanden te maken, MySQL kan een integraal onderdeel van uw Web services oplossing.
wilt u een stukje?
wat zijn uw ervaringen met XML-en relationele databases? Doe mee met de discussie hieronder of stuur ons een e-mail met uw gedachten.

Geef een antwoord

Het e-mailadres wordt niet gepubliceerd.