
آموزش SQLite - به همراه فیلم های آموزشی و صدها مثال
در این مقاله سعی داریم تا شما را با بانک اطلاعاتی اس کیو لایت (SQLite database) آشنا کنیم. و در مورد تفاوت های آن با بانک اطلاعاتی اس کیو ال سرور (SQL server data base) صحبت کنیم و در مورد مکانیزم عمل بانک اطلاعاتی اس کیو لایت (SQLite database) اشنا شویم.
بانک اطلاعاتی اس کیو لایت (SQLite database)
قبل از شروع آموزش SQLite ، لازم است بدانیم بانک اطلاعاتی اس کیو لایت (SQLite database) همانطور که از نام آن پیدا است یک بانک اطلاعاتی رابطه ای بر پایه زبان برنامه نویسی SQL است که ساختار بسیار ساده ای دارد و بسیار سبک بوده و بر پایه سرور و کلاینت کار نمی کند و به عباراتی server less است و از این رو نیاز به پیکر بندی ندارد. زمانیکه نرم افزار ها با یک بانک اطلاعاتی سرور (مانند بانک اطلاعاتی اس کیو ال سرور (SQL server database)) می خواهند ارتباط برقرار کنند ، برای این برقراری ارتباط نیاز به یک سری پردازش های داخلی نظیر استفاده از پروتکل TCP/IP دارند اما در مورد بانک اطلاعاتی مانند بانک اطلاعاتی اس کیو لایت (SQLite database) که بر پایه سرور و کلاینت کار نمی کند (server less) ، احتیاج به این پردازش ها و استفاده از پروتکل نیست. در بانک اطلاعاتی اس کیو لایت (SQLite database) ، پروسه ای که می خواهد به بانک اطلاعاتی دسترسی پیدا کند مستقیما از فایل های بانک اطلاعاتی در هارد دیسک می خواند. از این رو می توانند چندین برنامه کاربردی به آن دسترسی داشته باشند که این امکان ، هم می تواند مزیت محسوب شود و هم مشکلاتی را در پی داشته باشد. همچنین بانک اطلاعاتی اس کیو لایت (SQLite database) یک نرم افزار سورس باز (open source) است که به صورت رایگان عرضه می شود و در سال های اخیر با استقبال بسیاری مواجه شده است و نرخ استفاده از آن به سرعت رشد کرده است. از ویژگی های خوب بانک اطلاعاتی اس کیو لایت (SQLite database) :
- نصب و استفاده از بانک اطلاعاتی اس کیو لایت (SQLite database) نیاز به هیچ گونه پیکربندی خاصی ندارد به عبارت دیگر zero-configuration است. در حالیکه بانک اطلاعاتی اس کیو ال سرور (SQL server data base) نیاز به تنظیمات و پیکر بندی خاص خود دارد.
- بانک اطلاعاتی اس کیو لایت (SQLite database) روی چندین سیستم عامل قابل نصب است. و از زبان های برنامه نویسی بسیار زیادی پشتیبانی می کند.
- بانک اطلاعاتی اس کیو لایت (SQLite database) برای نصب ، نیاز به فضای بسیار کمی دارد در حالیکه بانک اطلاعاتی اسکیو ال سرور (SQL server data base) به حداقل شش گیگابایت از فضای هارد دیسک نیاز دارد.
- بانک اطلاعاتی اس کیو لایت (SQLite database) به صورت مستقل عمل می کند یعنی احتیاج به برنامه دیگری برای نصب ندارد بر خلاف بانک اطلاعاتی اس کیو ال سرور (SQL server data base) که نصب فرم ورک دات نت در هنگام نصب ان ضروری است.
مقایسه بین بانک اطلاعاتی اس کیو لایت (SQLite database) و بانک اطلاعاتی اس کیو ال سرور (SQL server database)
در جدول زیر امکانات دو بانک اطلاعاتی س کیو لایت (SQLite database) و بانک اطلاعاتی اس کیو ال سرور (SQL server database) لیست شده است تا مقایسه بین این دو بانک اطلاعادتی راحت تر صورت بگیرد.
بانک اطلاعاتی اس کیو ال سرور (SQL server database) |
بانک اطلاعاتی اس کیو لایت (SQLite database) |
|
Primary database model |
Relational DBMS |
Relational DBMS |
Secondary database models |
Document store |
Key-value store |
توسعه دهنده |
Microsoft |
Dwayne Richard Hipp |
نسخه اولیه |
1989 |
2000 |
نسخه جاری |
SQL Server 2017, October 2017 |
3.24.0, June 2018 |
دسترسی |
تجاری |
دسترسی رایگان – open source |
زبانی که با ان پیاده سازی شده اند |
C++ |
C |
سیستم عامل سرور |
لینوکس (Linux) |
server-less |
Data scheme |
بله |
بله |
Typing |
بله |
بله |
XML support |
بله |
خیر |
Secondary indexes |
بله |
بله |
SQL |
بله |
بله |
APIs and other access methods |
OLE DB |
ADO.NET |
زبان های برنامه نویسی که پشتیبانی می کند |
C# |
Actionscript |
Server-side scripts |
Transact SQL and .NET languages |
خیر |
Triggers |
بله |
بله |
Partitioning methods |
جدول ها می توانند در بین چندین فایل توزیع شوند (distributed across several files) |
خیر |
Replication methods |
بله – اما بستگی به نسخه SQL server دارد |
خیر |
Consistency concepts |
Immediate Consistency |
|
Foreign keys |
بله |
بله |
Transaction concepts |
ACID |
ACID |
Concurrency |
بله |
بله |
Durability |
بله |
بله |
In-memory capabilities |
بله |
بله |
User concepts |
fine grained access rights according to SQL-standard |
خیر |
تعدادی از امکانات در زبان SQL وجود دارد که در بانک اطلاعاتی اس کیو لایت (SQLite database) پشتیبانی نمی شود و قابل اجرا شدن نیست این امکانات از قرار زیر است :
- right outer join و full outer join در بانک اطلاعاتی اس کیو لایت (SQLite database) پشتیبانی نمی شود و تنها امکان پیاده سازیleft outer join وجود دارد.
- در دستور تغییر جدول (alter table) امکانات حذف ستون (drop column) ، تغییر ستون (alter column) و اضافه کردن قید (add constraint) وجود ندارد. اما امکان اضافه کردن ستون (add column) وجود دارد.
- view ها در بانک اطلاعاتی اس کیو لایت (SQLite database) به صورت فقط خواندنی هستند (read-only) در نتیجه در آن ، نمی توان از دستورات حذف (delete) ، بروزرسانی (update) و اضافه کردن (add) استفاده کرد.
- در مورد تریگر ها ، تنها در سطح row قابل پیاده سازی است و در سطح statement حمایت نمی شود.
این فصل در یک نگاه:
آموزش کاربردی پایگاه داده و بانک اطلاعاتی برای دانشجویان کاردانی و کارشناسی کامیپوتر.روشی آسان و راحت که در هیچ کتابی گف…
توضیحات کلی مجموعه: آموزش پایگاه داده یکی از تعاریف مناسب پایگاه داده یا همان بانک اطلاعاتی به فرم زیر است: بانک اطلاعاتی، مجموعه ای است از داده های ذخیره شده و پایا بصورت مجتمع و مبتنی …