
آموزش کار کردن با دیتابیس SQLite در اندروید
آموزش کار کردن با دیتابیس SQLite در اندروید یکی دیگر از آموزش های گروه آموزشی پرووید می باشد که در این قسمت آن را به شما معرفی می کنیم. این بسته آموزشی نیز یکی از دوره های آموزشی دیگر که در حوزه فارسی سازی آموزش های انگلیسی تنظیم شده است می باشد. عنوان این بسته آموزشی، آموزش کار کردن با دیتابیس SQLite در اپلیکیشن های اندروید است که با نام اصلی Android - SQLite Fundamentals از شرکت Pluralsight منتشر شده است.
استفاده کردن از SQLite در برنامه های اندروید
به بیان ساده SQLite یک دیتابیس SQL است که به صورت open-source ایجاد شده است و داده های خود را در فایل های متنی بر روی دستگاه ذخیره سازی می کند. سیستم عامل اندروید به صورت درونی از پیاده سازی دیتابیس SQLite پشتیبانی می کند. SQLite از تمامی قابلیت های بانک های اطلاعاتی رابطه ای پشتیبانی می کند. برای دسترسی پیدا کردن به این دیتابیس نیازی به برقرار کردن کانکشن هایی برای تکنولوژی هایی از قبیل: JDBC و ODBC ندارید. برای استفاده کردن از بانک اطلاعاتی SQLite بایستی پکیج اصلی آن که Android.DatabaseSQLite می باشد را مورد استفاده قرار بدهید. این پکیج شامل کلاس هایی برای مدیریت کردن دیتابیس می باشد.
ایجاد کردن دیتابیس
به منظور ایجاد کردن یک دیتابیس شما نیاز است که متد SQLiteDatabase.openOrCreateDatabase() به همراه نام دیتابیس تان و همچنین پارامتر mode را استفاده کنید.

این متد یک instance از دیتابیس SQLite را به شما برمی گرداند. نحوه استفاده کردن از این دستور در زیر نشان داده شده است.
استفاده کردن از Helper Class مربوط به دیتابیس SQLite
برای مدیریت کردن تمامی عملیات مربوط به دیتابیس یک Helper Class ایجاد شده است که SQLiteOpenHelper نام دارد.

این کلاس به صورت خودکار ایجاد کردن و بروزرسانی کردن دیتابیس را برای شما مدیریت می کند. نحوه استفاده کردن از این کلاس در قسمت زیر نشان داده شده است.
انجام عملیات CRUD در SQLite برای برنامههای اندروید
CRUD به چهار عملیات اصلی ایجاد، خواندن، بهروزرسانی و حذف دادهها اشاره دارد و یکی از مفاهیم پایه در کار با پایگاه داده است. در اپلیکیشنهای اندروید، SQLite امکان اجرای این عملیات را روی دادههایی فراهم میکند که بهصورت محلی روی دستگاه ذخیره شدهاند. برای مثال، یک برنامه میتواند اطلاعات ثبتشده توسط کاربر را در جدول قرار دهد، آنها را هنگام باز شدن صفحه بخواند و در صورت تغییر اطلاعات، رکورد مربوطه را بهروزرسانی کند.
اجرای صحیح عملیات CRUD به شناخت دستورهای SQL و ساختار جدولها نیاز دارد. هنگام درج اطلاعات باید مقادیر متناسب با ستونها ارسال شوند و هنگام خواندن دادهها، نتایج پرسوجو به شکلی مناسب پردازش شوند. در عملیات بهروزرسانی نیز شرط انتخاب رکورد اهمیت دارد، زیرا شرط نادرست ممکن است چندین ردیف را تغییر دهد. آشنایی با این اصول به توسعهدهندگان کمک میکند دادههای محلی برنامه را با دقت بیشتری مدیریت کنند و از بروز خطاهای رایج جلوگیری شود.
طراحی جدول و انتخاب نوع داده در SQLite
طراحی مناسب جدول در SQLite با مشخص کردن ستونها، نوع دادهها و روابط مورد نیاز آغاز میشود. هر جدول باید متناسب با اطلاعاتی طراحی شود که قرار است نگهداری کند و برای ستونهای آن محدودیتهای مناسبی در نظر گرفته شود. تعریف کلید اصلی میتواند شناسایی رکوردها را سادهتر کند و محدودیتهایی مانند NOT NULL و UNIQUE نیز برای کنترل برخی شرایط مربوط به دادهها کاربرد دارند. این تصمیمها بر کیفیت و قابلیت نگهداری اطلاعات ذخیرهشده تأثیر میگذارند.
SQLite در مقایسه با برخی سیستمهای پایگاه داده رابطهای، از سیستم نوعدهی انعطافپذیرتری استفاده میکند و رفتار نوع دادهها در آن ویژگیهای خاص خود را دارد. به همین دلیل، توسعهدهندگان باید با مفهوم Type Affinity و نحوه ذخیرهسازی مقادیر آشنا باشند. انتخاب درست ساختار جدول و تعریف محدودیتهای لازم میتواند از ناسازگاری دادهها بکاهد و پرسوجوها را قابل پیشبینیتر کند. این موضوع در برنامههایی که دادههای محلی متنوعی دارند اهمیت بیشتری پیدا میکند.
مدیریت Cursor و نمایش نتایج پرسوجو در اندروید
هنگام اجرای پرسوجو روی پایگاه داده SQLite، نتایج معمولاً در قالب ساختاری ارائه میشوند که امکان پیمایش رکوردها و خواندن مقادیر ستونها را فراهم میکند. در توسعه اندروید، Cursor یکی از ابزارهایی است که برای دسترسی به نتایج پرسوجو به کار میرود. برنامه میتواند با حرکت میان رکوردها، مقادیر مورد نیاز را استخراج کند و آنها را برای نمایش در رابط کاربری یا انجام پردازشهای دیگر در اختیار بخشهای مربوط قرار دهد.
مدیریت صحیح Cursor اهمیت زیادی دارد، زیرا باز نگه داشتن منابعی که دیگر به آنها نیاز نیست میتواند به مصرف غیرضروری منابع منجر شود. همچنین باید احتمال خالی بودن نتایج و تفاوت میان مقادیر معتبر و NULL را در نظر گرفت. بهتر است دسترسی به دادهها به شکلی انجام شود که ساختار پایگاه داده و منطق نمایش اطلاعات بیش از حد به یکدیگر وابسته نباشند. رعایت این اصول به خوانایی کد و نگهداری بهتر برنامه کمک میکند.
سرفصل مطالب آموزش ویدئویی کار کردن با دیتابیس SQLite در اندروید
فصل اول: مقدمه دوره آموزشی- مقدمه دوره آموزشی
- معرفی SQLite
- بررسی کردن ویژگی های ACID
- بررسی اجمالی اپلیکیشن این دوره آموزشی
- تعریف کردن Schema و Contract Class
- ایجاد کردن یک Model Class
- تعریف کردن یک Subclass برای SQLiteOpenHelper
- نوشتن کد مربوط به ایجاد کردن جدول
- معرفی کردن قابلیت های درج داده
- اعتبارسنجی کردن داده ورودی کاربر
- درج کردن داده به درون SQLite
- آموزش عملی: درج کردن داده به درون SQLite
- واکشی کردن داده ها از درون دیتابیس SQLite
- کار کردن با Cursor
- نمایش دادن داده ها در RecyclerView
- استفاده کردن از پارامتر های Selection برای فیلتر کردن داده ها: بخش اول
- استفاده کردن از پارامتر های Selection برای فیلتر کردن داده ها: بخش دوم
- بروز رسانی کردن داده ها در SQLite
- آموزش عملی: بروز رسانی کردن داده ها در SQLite
- دلیت کردن داده ها در SQLite
- آموزش عملی: دلیت کردن داده ها در SQLite
- راه اندازی کردن پروژه برای مایگریشن: بخش اول
- راه اندازی کردن پروژه برای مایگریشن: بخش دوم
- انجام مایگریشن بر روی Database Schema
- مقایسه کردن SQLite و Room
- چرا از SQLite استفاده کنیم؟
- جمع بندی







