Konverze db do xml

Online konvertor DB do XML zdarma

Převeďte soubory SQLite, Access a další DB soubory na strukturované XML záznamy.

Převést DB na XML online - zdarma

Uploading…
Vybrané soubory přesahují celkový limit 75 MB. Vyberte méně nebo menší soubory.

Soubor se zpracuje hned a smaže se ihned po stažení.

Jak to funguje

  1. 1/3

    Nahrajte soubor .db

    Kliknutím vyberte soubor, který chcete převést, nebo ho jednoduše přetáhněte do vyznačené oblasti.

  2. 2/3

    Spusťte převod .db do .xml

    Po úspěšném nahrání souboru klikněte na převod, jakmile budete připraveni.

  3. 3/3

    Stáhněte převedený soubor .xml

    Výsledek převodu je připraven ke stažení.

Jak převést soubor db do formátu xml

Applications that exchange structured records, migration tools, and archival systems may require XML instead of a proprietary database file. Converting the data makes it available to systems that cannot open the original database and allows it to be validated against an XML schema.

Co je formát DB

.db je obecná přípona názvu souboru, nikoli jediný formát databáze. Může označovat databázi SQLite, tabulku dBase, úložiště specifické pro danou aplikaci nebo data vytvořená embedded, mobilní, desktopovou či podnikovou aplikací. Samotná přípona neurčuje databázový engine ani to, který převaděč dokáže soubor načíst.

Před převodem zjistěte software, který soubor vytvořil. U předpokládaného souboru SQLite v systému Linux nebo macOS spusťte file input.db; běžná databáze SQLite obsahuje signaturu SQLite format 3. Databáze Microsoft Access obvykle používají přípony .mdb nebo .accdb a měly by být exportovány prostřednictvím Accessu nebo ovladače kompatibilního s Access. Otevření neznámé databáze v textovém editoru není spolehlivou metodou identifikace, protože většina databázových formátů je binární.

Co je formát XML

XML je textový formát, který reprezentuje strukturovaná data pomocí elementů a atributů, například <customer><name>Ana</name></customer>. Integrační platformy, systémy pro dokumenty, konfigurační nástroje a importní utility používají XML, protože je nezávislé na platformě, podporuje Unicode a je kompatibilní se standardními analyzátory a validačními nástroji.

XML automaticky nezachovává databázové indexy, triggery, oprávnění, plány dotazů, pohledy ani všechna relační omezení. Export musí definovat, jak se tabulky, vztahy, hodnoty null, data, binární hodnoty a identifikátory mapují do XML. Databáze s více tabulkami může být exportována jako samostatné elementy tabulek nebo jako vlastní vnořený dokument vyžadovaný cílovým systémem.

Jak převést soubor DB do XML

Použití vestavěného převaděče

Pro jednorázový převod nahrajte soubor do bezplatného převaděče na webu 101convert.com, jako výstupní formát zvolte XML, spusťte převod a stáhněte výsledek. Převaděč musí rozpoznat typ databáze a být schopen načíst její schéma a záznamy. Nenahrávejte důvěrná, osobní ani regulovaná data, pokud podmínky nakládání s daty dané služby nesplňují vaše požadavky.

Export SQLite pomocí Pythonu

Standardní knihovna Pythonu dokáže načíst SQLite a vytvořit dobře formované XML bez dalšího balíčku. Uložte tento skript jako db_to_xml.py:

import sqlite3
import xml.etree.ElementTree as ET

source = "input.db"
target = "output.xml"

def quote_identifier(name):
    return '"' + name.replace('"', '""') + '"'

with sqlite3.connect(source) as connection:
    connection.row_factory = sqlite3.Row
    root = ET.Element("database")
    tables = connection.execute(
        "SELECT name FROM sqlite_master "
        "WHERE type = 'table' AND name NOT LIKE 'sqlite_%' ORDER BY name"
    )
    for (table_name,) in tables:
        table_element = ET.SubElement(root, "table", {"name": table_name})
        columns = [row[1] for row in connection.execute(
            "PRAGMA table_info(" + quote_identifier(table_name) + ")"
        )]
        query = "SELECT * FROM " + quote_identifier(table_name)
        for record in connection.execute(query):
            row_element = ET.SubElement(table_element, "row")
            for column_name in columns:
                field = ET.SubElement(row_element, "field", {"name": column_name})
                value = record[column_name]
                if value is not None:
                    field.text = value.hex() if isinstance(value, bytes) else str(value)

ET.ElementTree(root).write(target, encoding="utf-8", xml_declaration=True)

Spusťte jej pomocí python db_to_xml.py a podle potřeby změňte hodnoty source a target. Výstup obsahuje jeden element table pro každou uživatelskou tabulku, jeden element row pro každý záznam a element field pro každý sloupec. Názvy sloupců jsou uloženy v atributu name, takže názvy, které nejsou platnými názvy XML elementů, dokument nenaruší. Hodnoty null se převedou na prázdná pole a hodnoty SQLite BLOB na hexadecimální text; obě tato mapování musí odpovídat očekáváním přijímající aplikace.

Export dat Microsoft Access

Otevřete databázi v Accessu, vyberte tabulku nebo dotaz a zvolte External Data → Export → More → XML File. Vyberte možnosti dat, schématu a prezentace požadované cílovým systémem. Exportujte dotaz místo nezpracované tabulky, pokud má XML obsahovat filtrovaná, spojená nebo vypočítaná data.

Převod jiných typů databází

Pokud je to možné, použijte aplikaci, která soubor vytvořila, a její příkaz pro export XML. Pokud export XML není k dispozici, exportujte vybranou tabulku nebo dotaz do CSV a poté CSV transformujte pomocí skriptu, který implementuje cílové XML schéma. Obecný převaděč nedokáže bezpečně odvodit proprietární pole, vztahy, formáty dat, kódování ani zamýšlenou strukturu XML z neidentifikovaného souboru .db.

Kontroly kvality a kompatibility

Před importem výsledek analyzujte. U výstupu z Pythonu spusťte python -c "import xml.etree.ElementTree as E; E.parse('output.xml'); print('valid XML')". Pokud cílový systém poskytuje XSD, proveďte validaci také proti tomuto schématu; syntakticky platné XML může stále obsahovat nesprávné názvy elementů, typy, pořadí nebo povinná pole.

Ověřte konvence časových razítek a dat, oddělovače desetinných míst, znaky Unicode, duplicitní názvy sloupců, prázdné hodnoty, generované ID a odkazy na cizí klíče. XML 1.0 nemá univerzální mapování chování databáze, jako jsou triggery, indexy, oprávnění nebo vynucování cizích klíčů. Binární pole vyžadují dohodnuté kódování, například hexadecimální nebo Base64. Velmi velké databáze mohou vytvářet neprakticky velké soubory XML, proto exportujte pouze požadované tabulky nebo záznamy, pokud není úplný výpis databáze nutný.

Často kladené otázky

Je konvertor DB do XML zdarma?

Ano, převod DB do XML na 101convert.com je zcela zdarma. Není potřeba registrace, e-mail ani instalace. Pokud potřebujete vyšší limit velikosti souboru nebo chcete převádět více souborů najednou, podívejte se na naše tarify.

Jak velký může být můj soubor DB?

Můžete nahrát soubory DB o velikosti až 50 MB a převést až 20 souborů najednou v jedné dávce.

Co se stane s nahranými soubory?

Soubory se zpracovávají automaticky a několik minut po převodu jsou z našich serverů smazány. Vaše soubory nikdy neprohlížíme ani nesdílíme.

Musím pro převod DB do XML instalovat nějaký software?

Ne. Převod DB do XML probíhá kompletně online v prohlížeči a funguje na Windows, Macu, Linuxu, Androidu i iPhonu.

Konverze se nezdařila?

Ve většině případů je příčinou nesprávný formát souboru. Nahrajte platný soubor DB pro tuto konverzi z DB do XML. Občas může být chyba také na naší straně. Analyzujeme opakované neúspěšné konverze, a pokud zjistíme závadu konvertoru, vypneme jej nebo opravíme.