databáze je považována za nedílnou součást většiny aplikací. Ať už jde o desktopovou, webovou nebo mobilní aplikaci, databáze hraje zásadní roli při ukládání, přístupu a manipulaci s daty. Existuje mnoho systémů pro správu databází, které umožňují vytváření a správu databází za vás.
Může však nastat situace, kdy potřebujete způsob, jak extrahovat data z databázových souborů, tj. soubor .db, bez instalace systému správy databáze nebo psaní SQL dotazů. Jak byste v takovém případě analyzovali databázový soubor a získali z něj data?
V tomto článku ukážu, jak snadno můžete extrahovat data z tabulek v databázi SQLite bez psaní SQL dotazů. Budu používat GroupDocs.Parser for .NET API, které podporuje extrahování dat z databází přes ADO.NET.
Kroky k extrahování dat z tabulek v databázi SQLite (.db)
-
Vytvořte nový projekt v sadě Visual Studio.
-
Nainstalujte GroupDocs.Parser for .NET z NuGet.
-
Přidejte následující jmenné prostory.
using System;
using System.Collections.Generic;
using System.IO;
using GroupDocs.Parser.Data;
using GroupDocs.Parser.Options;
- Připravte propojovací řetězec.
string connectionString = string.Format("Provider=System.Data.Sqlite;Data Source={0};Version=3;", "sqlite.db");
- Načtěte databázový soubor do objektu Parser.
using (Parser parser = new Parser(connectionString, new LoadOptions(FileFormat.Database)))
{
// váš kód jde sem
}
- Získejte seznam tabulek v databázi pomocí metody Parser.GetToc.
// Získejte seznam stolů
IEnumerable<TocItem> toc = parser.GetToc();
- Iterujte tabulky a extrahujte data.
// Iterujte přes tabulky
foreach (TocItem i in toc)
{
// Vytiskněte název tabulky
Console.WriteLine(i.Text);
// Extrahujte obsah tabulky jako text
using (TextReader reader = parser.GetText(i.PageIndex.Value))
{
Console.WriteLine(reader.ReadToEnd());
}
}
Kompletní kód
string connectionString = string.Format("Provider=System.Data.Sqlite;Data Source={0};Version=3;", "sqlite.db");
// Vytvořte instanci třídy Parser pro extrahování tabulek z databáze.
// Připojovací řetězec je předán jako první parametr a LoadOptions je nastaven na formát souboru databáze.
using (Parser parser = new Parser(connectionString, new LoadOptions(FileFormat.Database)))
{
// Získejte seznam stolů
IEnumerable<TocItem> toc = parser.GetToc();
// Iterujte přes tabulky
foreach (TocItem i in toc)
{
// Vytiskněte název tabulky
Console.WriteLine(i.Text);
// Extrahujte obsah tabulky jako text
using (TextReader reader = parser.GetText(i.PageIndex.Value))
{
Console.WriteLine(reader.ReadToEnd());
}
}
}
Výstup
Navštivte dokumentaci a prozkoumejte více o GroupDocs.Parser for .NET API. Příklady zdrojového kódu si můžete stáhnout nebo naklonovat z úložiště GitHub. V případě jakéhokoli dotazu jej jednoduše zveřejněte na fóru.