پایگاه داده به عنوان بخشی جدایی ناپذیر از اکثر برنامه ها در نظر گرفته می شود. پایگاه داده چه یک اپلیکیشن دسکتاپ، وب یا موبایل باشد، نقش حیاتی در ذخیره سازی، دسترسی و دستکاری داده ها ایفا می کند. سیستم های مدیریت پایگاه داده زیادی وجود دارد که امکان ایجاد و مدیریت پایگاه داده را برای شما فراهم می کند.

با این حال، ممکن است سناریویی وجود داشته باشد که شما به راهی برای استخراج داده ها از فایل های پایگاه داده، به عنوان مثال فایل .db، بدون نصب سیستم مدیریت پایگاه داده یا نوشتن پرس و جوهای SQL نیاز دارید. چگونه فایل پایگاه داده را در چنین حالتی تجزیه می کنید و داده ها را از آن دریافت می کنید؟

در این مقاله، من قصد دارم نشان دهم که چگونه به راحتی می توانید داده ها را از جداول در پایگاه داده SQLite بدون نوشتن پرس و جوهای SQL استخراج کنید. من قصد دارم از GroupDocs.Parser for .NET API استفاده کنم که از استخراج داده ها از پایگاه داده از طریق ADO.NET پشتیبانی می کند.

مراحل استخراج داده ها از جداول در پایگاه داده SQLite (db.)

  1. یک پروژه جدید در ویژوال استودیو ایجاد کنید.

  2. GroupDocs.Parser را برای .NET از NuGet نصب کنید.

  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());
		}
	}
}

خروجی

کد C# برای استخراج داده ها از پایگاه داده SQLite

برای کاوش بیشتر درباره GroupDocs.Parser برای NET API، از documentation دیدن کنید. می‌توانید نمونه‌های کد منبع را از مخزن GitHub دانلود یا شبیه‌سازی کنید. در صورت وجود هرگونه سوال، فقط آن را در [فروم 9 ارسال کنید.