SQLite چیست؟
۲ مرداد ۱۳۹۹
SQLite یک دیتابیس با SQL engine است که با ویژگیهای جامع بودن، قابل اطمینان بودن، embedded یا جاسازی شده، دارای قابلیت استفاده در حوزههای عمومی و … ارائه شده است.
SQLite پرکاربردترین دیتابیس در جهان است، از آن به عنوان یک کتابخانه در میان دیگر فرایندهای برنامهنویسی میتوان استفاده کرد و کدهای آن در دسترس عموم قرار دارد. برای استفاده به هر منظور، تجاری یا خصوصی رایگان است. در واقع آن را میتوان یک دیتابیس embedded از نوع SQL دانست.
خواندن و نوشتن در فایلهای دیسک را به راحتی انجام میدهد زیرا هیچگونه سرور جداگانهای مانند SQL ندارد. فرمت فایلهای SQLite به صورت cross-platform یا چند سکویی است و دادههای آن را به راحتی میتوان بین سیستمهای 32 و 64 بیتی کپی کرد. با توجه به این ویژگیها، این دیتابیس یک انتخاب محبوب بین برنامههایی است که بر اساس فرمت فایل کار میکنند.
تاریخچه دیتابیس SQLite:
این دیتابیس توسط D. Richard Hipp برای رفع نیاز از مباحث مدیریتی در اجرای یک برنامه، در آگوست سال ۲۰۰۰ ساخته شد. از دیتابیسهای MySQL و Oracle بسیار سبکتر است. نسخههای مختلف SQLite از سال ۲۰۰۰ تا به حال منتشر شده و در اختیار ما قرار گرفته است.
نصب دتابیس SQLite بر روی ویندوز:
- بازدید از وبسایت رسمی SQLite برای دانلود فایل Zip
- دانلود فایل Zip
- ساخت یک پوشه در درایو اصلی یا هرجایی که به آن نیاز دارید و محتوای فایل Zip را در آن بریزید
- command prompt خود را باز کنید و به پوشه مورد نظر بروید، سپس دستور
sqlite3
را تایپ و کلید enter را بفشارید.
همچنین میتوانید فایل .exe
را در پوشهای که sqlite قرار گرفته است، اجرا کنید.
سپس SQLite اجرا میشود.
نصب دتابیس SQLite بر روی لینوکس:
دستور زیر را در terminal خود وارد کرده و رمزعبور خود را وارد کنید.
sudo apt-get install sqlite3 libsqlite3-dev
بقیه عملیات نصب به صورت خودکار انجام میشوند و از شما سوال میشود “آیا میخواهید sqlite را نصب کنید؟ (Y / N)”
Y را وارد کنید و کلید enter را بفشارید. بعد از نصب موفق sqlite میتوانید با دستور sqlite3 در ترمینال آن را اجرا کنید.
ویژگیهای دیتابیس SQLite
- transactionها در SQLite از ACID (atomicity, consistency, isolation, durability) حتی پس از خرابی سیستم و قطعی برق پیروی میکنند.
- فرآیند پیکربندی بسیار آسان است، به هیچگونه تنظیم و مدیریتی، نیاز نیست.
- SQLite از تمام ویژگیهای SQL به همراه چند چیز اضافی دیگر مانند: partial indexes, indexes on expressions, JSon, و table expressions بهره میبرد.
- بعضی اوقات از ورودی و خروجیهای فایلهای سیستم، سریعتر عمل میکند.
- از دیتابیسهایی با حجم ترابایت و stringها و blobهایی (فایلهای تصویری، ویدئویی) با حجم گیگابایت (در اندازه گیگابایت) پشتیبانی میکند.
- تقریبا از تمامی سیستمعاملها مانند: Android, BSD, IOS, Linux, Mac, Solaris. VxWorks و انواع مختلف ویندوز پشتیبانی میکند. همچنین برای انتقال به سیستمهای دیگر، عملیات بسیار آسانی نیاز دارد.
- تمام دیتابیس را میتوان بر روی انواع مختلف دیسکها ذخیره کرد (اشاره به cross-platform بودن این تکنولوژی).
موارد استفاده دیتابیس SQLite
- با توجه به حجم کم کدها و استفاده مفید از حافظه، SQLite به یه انتخاب عالی برای دیتابیس تلفنهای همراه، PDA’s, MP3 Player, set-top boxes و بسیاری از گجتهای الکترونیکی دیگر تبدیل شده است.
- این تکنولوژی، جایگزینی برای نوشتن فایلهای XML, JSON, CSV یا برخی دیگر از فرمتها در فایلهای مورد استفاده برنامهها، شده است.
- از آنجا که هیچ گونه مشکلی برای پیکربندی وجود ندارد و به راحتی فایل را در یک فایل دیسک معمولی ذخیره میکند، بنابراین میتواند به عنوان دیتابیسی برای وب سایتهای کوچک و متوسط استفاده شود.
- این ابزار در مقابل دیگر ابزارها بسیار سریعتر است و قابلیت دسترسی بالایی را شامل میشود. بنابراین در سیستمعاملهای مختلف، کاربرد بسیار خوبی دارد.
دستورهای دیتابیس SQLite
در SQLite، دستورهای dot (.) زیادی وجود دارد که با یک (؛) به پایان نمیرسند. در اینجا همه دستورها و توضیحهای آنها آورده شده است:
برخی از دستورهای 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
- فقط در جاهایی استفاده میشود که درخواست ترافیک کم تا متوسط وجود داشته باشد.
- اندازه دیتابیس محدود است، یعنی در بیشتر موارد ۲ گیگابایت است.
توسعهدهندگان دربارهی ما چه میگویند
تجربه کار باliara_cloud@امروز خیلی خوب بود. یکی از سرویس هام رو منتقل کردم روش و راضیم. انقد سریع و جذاب کارم راه افتادم اصن باورم نمیشد! برعکس سرویس های PaaS دیگه با اون همه پیچیدگیشون. دمتون گرم
...
MohammadReza
keikaavousi
بعد از بسته شدن @fandoghpaas و ناراحتی همهمون از اینکه یه سرویس خوب و صادق نمیتونه از پس هزینهها بر بیاد، سرویسم رو منتقل کردم به پاس لیارا (https://liara.ir @liara_cloud) . تجربه راحت و خوب. تفاوتهایی داشت که کمی کار میخواست ولی تا الان کاملا راضی.
jadi
jadi
یه خسته نباشید باید به تصمیمliara_cloud@بگم،
بعد از چندین روز سرکله زدن با سرویس های مشابه بالاخره تصمیم گرفتم لیارا رو امتحان کنم و باور نمیشه ۱۰ دقیقه بیشتر وقت نبرد،
دمتون گرم.
Arch
EbadiDev
واسه سرویس PaaS با اختلاف لیارا بهترین رابط کاربری داره و یکی از مزیتهای سرویس دیتابیسشون اینه که خودشون به صورت دورهای بکآپ میگیرن.
...
Ali Najafi
me_ali_najafi
یکی از کارهای خوبی که جدیداً میکنم اینه که یه دیتابیس روی لیارا میسازم و به پروژه وصل میکنم اینطوری هم خونه و هم محل کار دیتابیس بروز رو دارم و راحت میتونم ادامه بدم کار روliara_cloud@
Navid
1navid
عاشقliara_cloud@شدم درسته در حد AWS نیست ولی خب تجربه خوبی واسه پروژه های داخل ایران ارائه میده، میتونم رو CD هم اجراش کنم
Amir H Shekari
vanenshi