ورود

View Full Version : مقاله: معرفی و مقایسه ابزارهای رایگان برای مدیریت بانک اطلاعاتی SQLite



BOB
جمعه 17 آبان 1392, 10:37 صبح
بانک اطلاعاتی SQLite (http://www.sqlite.org/) در سال 2000 و توسط یکی از کارمندان شرکت General Dynamics به نام Richard Hipp با زبان C طراحی شد. در حال حاضر این بانک اطلاعاتی توسط شرکت‌های بسیار معتبری مانند ORACLE، Adobe، Mozilla، Nokia و … حمایت می‌شود.


ایده اولیه برای طراحی آن، ایجاد یک بانک اطلاعاتی مستقل و بی‌نیاز از نگهداری و مدیریت، جهت استفاده در پروژه‌های نظامی نیروی دریایی ایالات متحده بود. شرکت General Dynamics طی قراردادی با نیروی دریایی، در حال طراحی نرم‌افزاری برای سیستم‌های هدایت شونده انهدام موشک در یک سیستم عامل اختصاصی یونیکس با نام HP-UX بود.


اولین نسخه از این بانک اطلاعاتی در ماه آگوست همان سال ارائه شد. معماری نسخه 1.0، مبتنی بر قواعد GNU DBM (معروف به GDBM) بود که امکان استفاده از فیلدهای بدون نوع و بدون محدودیت در طول داده را فراهم می‌نمود. پس از آن و با ارائه نسخه‌های بعدی، پیشرفت چشمگیری در پیاده‌سازی قابلیت‌های جدید در SQLite (http://www.sqlite.org/syntaxdiagrams.html) بوقوع پیوست. به عنوان مثال می‌توان از تغییر معماری آن به مدل B-Tree و همچنین اضافه شدن قابلیت‌های اجرای تراکنش، پشتیبانی از یونیکد و انواع داده‌ای جدید نام برد. از پیشرفتهای اخیر آن نیز می‌توان به ارائه UnQLite برای سازگاری با Document-Oriented Database و NoSQL اشاره کرد.





http://sites.google.com/site/mohammadshamsjavi/img/220px-SQLite370.png (http://sites.google.com/site/mohammadshamsjavi/img/220px-SQLite370.png)




در حال حاضر یک از مهمترین کاربردهای SQLite (http://www.sqlite.org/famous.html)، استفاده از آن در سیستم‌های Mobile و Embed است. به عنوان مثال بسیاری از web browser ها (مانند mozilla، chrome، safari و غیره) برای ذخیره سازی تنظیمات داخلی خود از آن استفاده کرده و همچنین این بانک اطلاعاتی سیستم ذخیره‌سازی پیشفرض در طراحی برنامه‌های سیستم عامل Android و iOS نیز هست.

در این مطلب قصد دارم تا برخی از بهترین ابزارهای رایگانی را که برای ایجاد و مدیریت بانک‌های اطلاعاتی SQLite مورد استفاده قرار می‌گیرند معرفی نمایم. ابزارها به ترتیب صعودی و منطبق بر کارایی و قابلیت‌هایشان معرفی شده‌اند.



7. Run:
نقاط قوت: پشتیبانی از Encryption و Compression فقط در خواندن از بانک – وجود تاریخچه و template برای اجرای انواع کوئری‌ها – محاسبه زمان مورد نیاز اجرا کوئری – مناسب برای کار با کوئری‌های SQL



نقاط ضعف: عدم امکان import و Export بانک – نیاز به AIR برای اجرا – عدم وجود قابلیتهای گرافیکی برای ایجاد بانک و جداول





http://sites.google.com/site/mohammadshamsjavi/img/run.png (http://sites.google.com/site/mohammadshamsjavi/img/run.png)

6. SQLiteMan:
نقاط قوت: پشتیبانی از index، view، trigger، Integrity Check در بانک – امکان export ساده بهsql query – محاسبه زمان مورد نیاز اجرا کوئری – نمایش کدهای DDL – امکان نمایش فیلدهای BLOB به صورت تصویر – نمایش و تغییر تنظیمات داخلی SQLite PRAGMA – دارای Query Builder

نقاط ضعف: عدم پشتیبانی از Encryption و Compression – رابط کاربری بسیار بد



http://sites.google.com/site/mohammadshamsjavi/img/SQLiteMan.png (http://sites.google.com/site/mohammadshamsjavi/img/SQLiteMan.png)

5. Singular SQLite Explorer:
نقاط قوت: پشتیبانی از index در بانک – امکان export به sql query، و XML – امکان import از RegEx و ADO – محاسبه زمان مورد نیاز اجرا کوئری –قدرت و سرعت بسیار خوب در کار با بانکهای حجیم – امکان گروه بندی داده‌ها در GRID در زمان نمایش – دارای Query Builder گرافیکی و مجهز

نقاط ضعف: عدم پشتیبانی از Encryption و Compression – عدم نمایش داده‌های یونیکد – عدم سازگاری با Win7



http://sites.google.com/site/mohammadshamsjavi/img/singular-sqlite-explorer.png (http://sites.google.com/site/mohammadshamsjavi/img/singular-sqlite-explorer.png)

4. Lita:
نقاط قوت: پشتیبانی از index، Encryption و Compression در بانک – امکان export به sql query – وجود تاریخچه برای اجرای کوئری‌ها

نقاط ضعف: عدم امکان import کل بانک – مشکل با نمایش صحیح فیلدهای RTL دارای متن فارسی و انگلیسی – نیاز به AIR برای اجرا



http://sites.google.com/site/mohammadshamsjavi/img/lita.png (http://sites.google.com/site/mohammadshamsjavi/img/lita.png)

3. SQLite Database Browser:
نقاط قوت: پشتیبانی از index و Compression در بانک – امکان export به sql query و CSV – وجود تاریخچه برای اجرای کوئری‌ها – تعیین Default Value و Encoding – رابط کاربری خوب برای ایجاد جداول و فیلدها

نقاط ضعف: عدم پشتیبانی از Encryption – عدم سازگاری کامل با Win7



http://sites.google.com/site/mohammadshamsjavi/img/sqlite-database-browser.png (http://sites.google.com/site/mohammadshamsjavi/img/sqlite-database-browser.png)

2. SQLite Administrator:
نقاط قوت: پشتیبانی از index، view و trigger در بانک – امکان export به sql query، CSV، XML و html – رابط کاربری بسیار مجهز و امکان استفاده از کوئریهای مختلف در tab های جداگانه – امکان ارتقاء نسخه بانک به SQLite جدید – محاسبه زمان مورد نیاز اجرا کوئری – امکان نمایش فیلدهای BLOB به صورت تصویر – امکان استفاده از انواع داده‌های ثانویه مانند datetime، float و غیره که جزء داده‌های اولیه نیستند اما با استفاده از توابع داخلی SQLite میتوان آنها را ایجاد کرد – قدرت و سرعت بسیار خوب در کار با بانکهای حجیم

نقاط ضعف: عدم پشتیبانی از Encryption و Compression – به طرز احمقانه‌ای از نمایش داده‌های یونیکد عاجز است، تنظیمی هم برای تغییر فونت پیشفرض نمایش ندارد



http://sites.google.com/site/mohammadshamsjavi/img/sqlite-administrator.png (http://sites.google.com/site/mohammadshamsjavi/img/sqlite-administrator.png)

1. SQLiteStudio:
نقاط قوت: پشتیبانی از index، view، trigger، Integrity Check و Vacuum در بانک – امکان export به sql query، CSV، XML و html با تنظیمات مناسب جهت تعیین فرمت خروجی و غیره – رابط کاربری بسیار مجهز و امکان استفاده از کوئریهای مختلف در tab های جداگانه – امکان ارتقاء نسخه بانک به SQLite جدید – محاسبه زمان مورد نیاز اجرا کوئری – امکان کار با فیلدهای BLOB در HexEditor داخلی آن – امکان استفاده از انواع داده‌های ثانویه مانند datetime، float و غیره که جزء داده‌های اولیه نیستند اما با استفاده از توابع داخلی SQLite میتوان آنها را ایجاد کرد – قدرت و سرعت بسیار خوب در کار با بانکهای حجیم – نمایش کدهای DDL در تمام پنجره‌های مرتبط با فیلدها – دارای setting بسیار کامل برای تغییر تمام تنظیمات برنامه – دارای Syntax Formatter برای مرتب کردن Query ها – امکان توسعه plugin – امکان تعریف توابع جدید SQL – دارای مستندات، راهنما و user manual مناسب و همچنین forum پشتیبانی – قابلیتهای جالب برای duplicate کردن سطرها، جداول و غیره

نقاط ضعف: عدم پشتیبانی از Encryption و Compression – وجود وقفه اولیه در زمان باز کردن بانک



http://sites.google.com/site/mohammadshamsjavi/img/SqliteStudio.png (http://sites.google.com/site/mohammadshamsjavi/img/SqliteStudio.png)

در پایان لازم به ذکر است که هرچند ابزار SQLiteStudio بیشترین امتیاز را گرفته است، اما فکر می‌کنم که هنوز تا تبدیل به یک ابزار ایده‌آل کمی فاصله دارد. در صورتی که وقفه اولیه در زمان باز کردن بانک وجود نداشته و رابط کاربری آن هم به شکل بهتری مرتب شود (مثلا اجرا در دو حالت Basic و Expert) احتمالا این اتفاق خواهد افتاد. ابزار Lita هم به دلیل پشتیبانی از Encryption که در مابقی ابزارهای رایگان وجود ندارد، قابل تقدیر است.

mjnikbn
یک شنبه 26 آبان 1392, 19:13 عصر
بسيار عالي بود
لطفا access و ديگر پايگاه داده ها را هم اضافه كن

mjnikbn
یک شنبه 26 آبان 1392, 19:20 عصر
اينجا (http://database-management-systems.findthebest.com/compare/8-13-24-26-53/CUBRID-vs-Firebird-vs-Access-vs-Microsoft-SQL-Server-vs-SQLite)هم يك مقايسه از
SQLite
Microsoft-SQL-Server
CUBRID
Firebird
Access

saelozahra
شنبه 24 خرداد 1393, 16:08 عصر
سلام
خسته نباشید
ببخشید در مورد sqllite یه سوال داشتم
این نوع داده blob میخواستم یه توضیح روش برام بدین
ممنون

Hossis
دوشنبه 26 خرداد 1393, 14:03 عصر
برای sqlite من از sharppluse استفاده می کنم همه چیزش خوبه ، فقط رابط گرافیکی اش مسخره هست، این Encryption و Compression رو هم نمی دونم از کجا باید تحقیق کرد.

خلاصه اگر لینک دانلود هر کدام از ابزارها رو هم می گذاشتید عالی می شد.