برنامه‌نویسی

SQLite چیست؟

SQLite چیست؟

SQLite یک دیتابیس با SQL engine است که با ویژگی‌های جامع بودن، قابل اطمینان بودن، embedded یا جاسازی شده، دارای قابلیت استفاده در حوزه‌های عمومی و … ارائه شده است.

SQLite پرکاربردترین دیتابیس در جهان است، از آن به عنوان یک کتاب‌خانه در میان دیگر فرایندهای برنامه‌نویسی می‌توان استفاده کرد و کدهای آن در دسترس عموم قرار دارد. برای استفاده به هر منظور، تجاری یا خصوصی رایگان است. در واقع آن را می‌توان یک دیتابیس embedded از نوع SQL دانست.

خواندن و نوشتن در فایل‌های دیسک را به راحتی انجام می‌دهد زیرا هیچگونه سرور جداگانه‌ای مانند SQL ندارد. فرمت فایل‌‌‌های SQLite به صورت cross-platform یا چند سکویی است و داده‌‌های آن را به راحتی می‌توان بین سیستم‌های 32 و 64 بیتی کپی کرد. با توجه به این ویژگی‌ها، این دیتابیس یک انتخاب محبوب بین برنامه‌هایی است که بر اساس فرمت فایل کار می‌کنند.

تاریخچه دیتابیس SQLite:

این دیتابیس توسط D. Richard Hipp برای رفع نیاز از مباحث مدیریتی در اجرای یک برنامه، در آگوست سال 2000 ساخته شد. از دیتابیس‌های MySQL و Oracle بسیار سبک‌تر است. نسخه‌های مختلف SQLite از سال 2000 تا به حال منتشر شده و در اختیار ما قرار گرفته است.

نصب دتابیس SQLite بر روی ویندوز:

  • بازدید از وبسایت رسمی SQLite برای دانلود فایل Zip
  • دانلود فایل Zip
  • ساخت یک پوشه در درایو اصلی یا هرجایی که به آن نیاز دارید و محتوای فایل Zip را در آن بریزید
  • command prompt خود را باز کنید و به پوشه مورد نظر بروید، سپس دستور sqlite3 را تایپ و کلید enter را بفشارید.
اجرای دستور sqlite3 در خط‌ فرمان ویندوز

همچنین می‌توانید فایل .exe را در پوشه‌ای که sqlite قرار گرفته است، اجرا کنید.

اجرای sqlite با فایل .exe

سپس SQLite اجرا می‌شود.

sqlite در حالت اجرا شده

نصب دتابیس SQLite بر روی لینوکس:

دستور زیر را در terminal خود وارد کرده و رمزعبور خود را وارد کنید.

sudo apt-get install sqlite3 libsqlite3-dev
دستور مورد نیاز برای نصب sqlite بر روی لینوکس

بقیه عملیات نصب به صورت خودکار انجام می‌شوند و از شما سوال می‌شود “آیا می‌خواهید sqlite را نصب کنید؟ (Y / N)”

Y را وارد کنید و کلید enter را بفشارید. بعد از نصب موفق sqlite می‌توانید با دستور sqlite3 در ترمینال آن را اجرا کنید.

روند نصب sqlite بر روی لینوکس

ویژگی‌های دیتابیس SQLite

  1. transactionها در SQLite از ACID (atomicity, consistency, isolation, durability) حتی پس از خرابی سیستم و قطعی برق پیروی می‌کنند.
  2. فرآیند پیکربندی بسیار آسان است، به هیچگونه تنظیم و مدیریتی، نیاز نیست.
  3. SQLite از تمام ویژگی‌های SQL به همراه چند چیز اضافی دیگر مانند: partial indexes, indexes on expressions, JSon, و table expressions بهره می‌برد.
  4. بعضی اوقات از ورودی و خروجی‌های فایل‌های سیستم، سریع‌تر عمل می‌کند.
  5. از دیتابیس‌هایی با حجم ترابایت و stringها و blobهایی (فایل‌های تصویری، ویدئویی) با حجم گیگابایت (در اندازه گیگابایت) پشتیبانی می‌کند.
  6. تقریبا از تمامی سیستم‌عامل‌ها مانند: Android, BSD, IOS, Linux, Mac, Solaris. VxWorks و انواع مختلف ویندوز پشتیبانی می‌کند. همچنین برای انتقال به سیستم‌های دیگر، عملیات بسیار آسانی نیاز دارد.
  7. تمام دیتابیس را می‌توان بر روی انواع مختلف دیسک‌ها ذخیره کرد (اشاره به cross-platform بودن این تکنولوژی).

موارد استفاده دیتابیس SQLite

  1. با توجه به حجم کم کد‌ها و استفاده مفید از حافظه، SQLite به یه انتخاب عالی برای دیتابیس تلفن‌های همراه، PDA’s, MP3 Player, set-top boxes و بسیاری از گجت‌های الکترونیکی دیگر تبدیل شده است.
  2. این تکنولوژی، جایگزینی برای نوشتن فایل‌های XML, JSON, CSV یا برخی دیگر از فرمت‌ها در فایل‌های مورد استفاده برنامه‌ها، شده است.
  3. از آنجا که هیچ گونه مشکلی برای پیکربندی وجود ندارد و به راحتی فایل را در یک فایل دیسک معمولی ذخیره می‌کند، بنابراین می‌تواند به عنوان دیتابیسی برای وب سایت‌های کوچک و متوسط ​​استفاده شود.
  4. این ابزار در مقابل دیگر ابزارها بسیار سریع‌تر است و قابلیت دسترسی بالایی را شامل می‌شود. بنابراین در سیستم‌عامل‌های مختلف، کاربرد بسیار خوبی دارد.

دستورهای دیتابیس SQLite

در SQLite، دستورهای dot (.) زیادی وجود دارد که با یک (؛) به پایان نمی‌رسند. در اینجا همه دستورها و توضیح‌های آنها آورده شده است:

دستورهای sqlite
دستورهای sqlite
دستورهای sqlite

برخی از دستورهای DDL و DML

دستورهای SQLite شبیه فناوری‌هایی مانند MySQL و Oracle است.

  • ساخت جدول:
CREATE TABLE STUDENT(
ID INT PRIMARY KEY NOT NULL,
NAME TEXT NOT NULL,
AGE INT NOT NULL,
ADDRESS CHAR(50),
FEES REAL
);
  • دستور Insert:
INSERT INTO STUDENT (ID, NAME, AGE, ADDRESS, FEES)
VALUES (1, 'Sunil', 28, 'Mumbai', 20000.00);
  • حذف یک جدول:
Drop Table Student;

معایب دیتابیس SQLite

  • فقط در جاهایی استفاده می‌شود که درخواست ترافیک کم تا متوسط ​​وجود داشته باشد.
  • اندازه دیتابیس محدود است، یعنی در بیشتر موارد 2 گیگابایت است.
مقایسه sql با sqlite

منبع: https://www.geeksforgeeks.org/introduction-to-sqlite