معرفی پایگاه داده سریع و کم حجم LiteDB + آموزش استفاده در سی شارپ

لرن سایت,آموزش برنامه نویسی سی شارپ,آموزش طراحی سایت,آموزش برنامه نویسی اندروید,آموزش SQL c# android php jquery,قالب سایت

شما اینجا هستید : صفحه اصلی

با عضویت در کانال تلگرامی لرن سایت ، اولین فردی باشید که از تخفیفات و مطالب جدید خبردار می شوید !

معرفی پایگاه داده سریع و کم حجم LiteDB + آموزش استفاده در سی شارپ

آموزش litedb در سی شارپ

اگر بخواهید یک نرم افزار سبک یا شاید نیمه سنگین بنویسید مانند یک نرم افزار یاد آور ، نرم افزار مدیریت هتل ، رستوران و… برای دخیره داده ها از
SQL استفاده میکنید ؟

اجبار نصب بودن ران تایم SQL روی سیستم کاربر و فعال بودن سرویس آن
پیچیدگی
اجبار به استفاده از یک حالت خاص ( رابطه ای) و …

بخشی از مشکلات SQL هستند که ممکن است نخواهید با آن ها رو به رو شوید ، ما پیشنهاد بهتری برای شما داریم!

دیتا بیس های NOSQL

نواس‌کیوال مخفف not only sql به معنای نه تنها اس‌کیوال نامی است فراگیر برای رده ی گسترده ای از سامانه های مدیریت پایگاه داده که با نوع سنتی پایگاه های داده رابطه ای تفاوت های آشکار دارند. روشن ترین این تفاوت ها عدم استفاده از اس‌کیوال به عنوان زبان پرسش نخستین در noSQL است. نمونه اش پایگاه داده‌های اکس‌ام‌ال و پایگاه داده‌های سند-گرا است. یکی از پیاده سازی های شناخته شده این نوع پایگاه داده ها کاوچ‌دی‌بی ساخت بنیاد نرم‌افزار آپاچی است.(ویکیپدیا)

به زبان ساده تر دیتابیس های NOSQL دیتابیس هایی هستند شیوه کارکرد آن ها با اس کیو ال متفاوت است و یک سری از مشکلات SQL را ندارند.

 

شروع کار با LiteDB!

یکی از بهترین دیتا بیس های NoSql برای سی شارپ LiteDB هست که علاوه بر سادگی در نصب و استفاده بسیار سریع میباشد. بر خلاف SQL ، لایت دی بی کاملا به خود متکی بوده و تنها شامل یک فایل DLL (با تنها حدود 350 کیلوبایت حجم) میباشد .

نصب LiteDB

برای نصب لایت دی بی در ویژوال استودیو از منوی Tools ازNuget Package Manager گزینه Package Manager Console را انتخاب کرده و عبارت زیر را در آن تایپ کنید:

Install-Package LiteDB

تمام شد! لایت دی بی آماده به کار است.

 

افزودن رکورد به LiteDB

فرض کنید که ما میخواهیم اطلاعات مشتری را در پایگاه داده خود ذخیره کنیم . برای اینکار ابتدا یک کلاس به نام Customer به شکل زیر میسازیم(توجه کنید حتما باید پراپرتیId در ابتدا ساخته شود):

public class Customer
{
    public int Id { get; set; }
    public string Name { get; set; }
    public string[] Phones { get; set; }
    public bool IsActive { get; set; }
}

حال یک آبجکت از کلاس Customer به صورت زیر میسازیم:

 var customer = new Customer
    { 
        Name = "John Doe", 
        Phones = new string[] { "8000-0000", "9000-0000" }, 
        IsActive = true
    };

قبل از ورود اطلاعات درون پایگاه داده باید آن را باز کنیم که برای باز کردن آن از using استفاده میکنیم و درون بلاک آن با دیتابیس کار میکنیم:

//Be Jaye "MayData" mitavanid name delkhah ra entekhab konid
using (var db = new LiteDatabase(@"MyData.db")
{

}

 

برای تبدیل آبجکتی که از کلاس Customer ساختیم به رکورد و اضافه کردن آن به دیتابیس ابتدا یک لیست در دیتابیس بازمیکنیم ( اگر قبلا وجودنداشت به طور اتوماتیک یک کالکشن جدید ساخته میشود) و سپس آبجکت خود را در دیتابیس وارد میکنیم:

using(var db = new LiteDatabase(@"MyData.db"))
{

 // Baz Kardan ya sakhtane yek collectione jadid
var customers = db.GetCollection<Customer>("customers");

//vared kardane object be database
 customers.Insert(customer);

}

به روز رسانی و حذف اطلاعات در LiteDB

فرض کنید میخواهیم نام مشتزی زا تغییر بدهیم ، برای اینکار ابتدا تغییرات را در آبجکت انجام داده و سپس با استفاده از آبجکت عمل به روز رسانی را انجام دهیم:

using(var db = new LiteDatabase(@"MyData.db"))
{
    customer.Name = "Joana Doe";

    customers.Update(customer);
}

برای حذف یک رکورد هم کافیست به جای متد Update در کد بالا از متد Remove استفاده کنیم.

 

استفاده از LINQ در LiteDB

برای استفاده از LINQ در لایت دی بی و نوشتن کوئری هم میتوانیم به شیوه زیر عمل کنیم :

using(var db = new LiteDatabase(@"MyData.db"))
{
// Peyda Kardane id yek file ba dashtane yek property az record
    customers.EnsureIndex(x => x.Name);

    // Query ba estefadeh az LINQ
    var results = customers.Find(x => x.Name.StartsWith("Jo"));
}

برای اطلاعات بیشتر مانند نحوه ذخیره کردن فایل ها در لایت DB میتوانید به اینجا مراجعه کنید.

تمام شد!

امیدواریم این مطلب برای شما مفید واقع شده باشد و از لایت دی بی استفاده کافی را ببرید .

سوالات خود را میتوانید در بخش نظرات همین مطلب مطرح کنید!

5/5 - (1 امتیاز)
اگه مطلب خوشتون اومد پس لطفا به اشتراک بذارین تا بقیه هم خوششون بیاد :)

نظرات

مشترک شدن
اطلاع رسانی از :
guest
0 نظرات
Inline Feedbacks
View all comments