CodeShot
SQLite1 دقیقه مطالعه

SQLite چیست؟

یک دیتابیس رابطه‌ای سبک، بدون سرور جداگانه، که کل دیتابیس را در یک فایل واحد ذخیره می‌کند — مناسب اپلیکیشن‌های موبایل، دسکتاپ و تست.

چرا مهم است؟

SQLite نیاز به نصب و راه‌اندازی سرور دیتابیس را حذف می‌کند؛ همین سادگی آن را انتخاب پیش‌فرض اپ‌های موبایل (از جمله MAUI/Xamarin)، ابزارهای دسکتاپ و تست‌های خودکار می‌کند.

تعریف

SQLite یک دیتابیس رابطه‌ای Embedded است — کل دیتابیس (جدول‌ها، Index، داده) در یک فایل .db روی دیسک ذخیره می‌شود و هیچ فرایند سرور جداگانه‌ای اجرا نمی‌شود؛ برنامه مستقیماً با آن فایل کار می‌کند.

مثال (با EF Core)

services.AddDbContext<AppDbContext>(options =>
    options.UseSqlite("Data Source=app.db"));

کجا مناسب است؟

✔ اپلیکیشن موبایل/دسکتاپ (ذخیره محلی) ✔ تست‌های خودکار (سریع، بدون نیاز به سرور) ✔ پروژه‌های کوچک و پروتوتایپ

کجا مناسب نیست؟

❌ برنامه‌های وب با نوشتن هم‌زمان بالا از چند سرور — SQLite برای همزمانی نوشتن سنگین طراحی نشده است؛ آن‌جا SQL Server یا PostgreSQL انتخاب درست‌تری است.

اشتباه رایج

❌ استفاده از SQLite به‌عنوان دیتابیس اصلی یک API عمومی با ترافیک بالا و چند Instance هم‌زمان — قفل‌شدن روی نوشتن (Write Lock) باعث گلوگاه می‌شود.

منبع و مطالعه بیشتر

خلاصه

SQLite کل دیتابیس را در یک فایل ذخیره می‌کند و نیاز به سرور جداگانه ندارد — عالی برای موبایل، دسکتاپ و تست. برای وب‌سرویس‌های با نوشتن هم‌زمان بالا مناسب نیست. مرجع کامل: مستندات رسمی SQLite و Microsoft Learn.

این مطلب مفید بود؟
نشان کردن
مشاهده در Concept Hub ←