數據庫 被認為是大多數應用程序的組成部分。無論是桌面、Web 還是移動應用程序,數據庫在存儲、訪問和操作數據方面都起著至關重要的作用。有許多數據庫管理系統可以為您創建和管理數據庫。

但是,可能會出現這樣一種情況,即您需要一種方法來從數據庫文件(即 .db 文件)中提取數據,而無需安裝數據庫管理系統或編寫 SQL 查詢。在這種情況下,您將如何解析數據庫文件並從中獲取數據?

在本文中,我將演示如何在不編寫 SQL 查詢的情況下輕鬆地從 SQLite 數據庫中的表中提取數據。我將使用 GroupDocs.Parser for .NET API,它支持通過 ADO.NET

從 SQLite 數據庫 (.db) 中的表中提取數據的步驟

  1. 在 Visual Studio 中創建一個新項目。

  2. NuGet 安裝適用於 GroupDocs.Parser for .NET。

  3. 添加以下命名空間。

using System;
using System.Collections.Generic;
using System.IO;
using GroupDocs.Parser.Data;
using GroupDocs.Parser.Options;
  1. 準備連接字符串。
string connectionString = string.Format("Provider=System.Data.Sqlite;Data Source={0};Version=3;", "sqlite.db");
  1. Parser 對像中加載數據庫文件。
using (Parser parser = new Parser(connectionString, new LoadOptions(FileFormat.Database)))
{
   // 你的代碼在這裡
}
  1. 使用 Parser.GetToc 方法獲取數據庫中表的列表。
// 獲取表格列表
IEnumerable<TocItem> toc = parser.GetToc();
  1. 遍歷表並提取數據。
// 遍歷表
foreach (TocItem i in toc)
{
    // 打印表名
    Console.WriteLine(i.Text);
    // 將表格內容提取為文本
    using (TextReader reader = parser.GetText(i.PageIndex.Value))
    {
          Console.WriteLine(reader.ReadToEnd());
    }
}

完整代碼

string connectionString = string.Format("Provider=System.Data.Sqlite;Data Source={0};Version=3;", "sqlite.db");
// 創建 Parser 類的實例以從數據庫中提取表。
// 連接字符串作為第一個參數傳遞,LoadOptions 設置為數據庫文件格式。
using (Parser parser = new Parser(connectionString, new LoadOptions(FileFormat.Database)))
{
	// 獲取表格列表
	IEnumerable<TocItem> toc = parser.GetToc();
	// 遍歷表
	foreach (TocItem i in toc)
	{
		// 打印表名
		Console.WriteLine(i.Text);
		// 將表格內容提取為文本
		using (TextReader reader = parser.GetText(i.PageIndex.Value))
		{
			Console.WriteLine(reader.ReadToEnd());
		}
	}
}

輸出

從 SQLite 數據庫中提取數據的 C# 代碼

訪問 文檔 以探索有關 GroupDocs.Parser for .NET API 的更多信息。您可以從 GitHub 存儲庫 下載或克隆源代碼示例。如有任何疑問,只需將其發佈到論壇