اموزش sqlite در اندروید

سلام.شاید بار ها نام sqlite را شنیده باشید و شاید کسانی که هنوز با ان اشنایی ندارند تصور کنند یادگیری این مبحث بسیار سخت و پیچیده باشد.خب مشخصا هر مبحثی پیچیدگی ها و سادگی های خود را دارد و مهم این است که ما چگونه ان را یاد میگیریم و از کجا شروع میکنیم.
کسانی که با دیتابیس تا حدودی اشنایی دارند و به طور کلی میدانند دیتابیس چی هست میتواند در این اموزش ها برای درک بهتر به ان ها کمک کند  و اما کسانی که تا حالا با دیتا بیس کار نکرده اند پیشنهاد میشود مباحث پایه ان را قبل اموزش مطالعه کنند تا در طول اموزش به مشکل نخورند.
در برنامه نویسی اندروید هم یکی از لازمه ها دیتابیس است و برای هر برنامه نویسی لازم است که ان را بلد باشد.دیتابیس یک فایلی است که اطلاعات در ان قرار میگرد و هر دیتا بیس شامل جدول هایی میشود که اطلاعات در انها نگهداری میشود.هر جدول تعدای ستون دارد که ویژگی های ما را مشخص میکند مانند نام و نام خوانوادگی.
خب برای ایجاد دیتا بیس در اندروید راه های مختلفی است شما میتوانید برای کار های کوچک دیتابیس را مستقیما ایجاد کنید و برای کار های بزرگ از کلاس جدا استفاده کنید.همچنین میتوانید دیتابیس از قبل ساخته شده را در برنامه تان قرار دهید.ما به بررسی همه اینا در این سری اموزش ها میپردازیم.

کار هایی که ما باید به ترتیب انجام بدهیم شامل موارد زیر هستند:

1-ایجاد دیتابیس

2-ایجاد جدول

3-دادن اطلاعات به جدول

4-گرفتن اطلاعات از جدول

5-بروز رسانی

6-حذف

اینها مهم ترین مبحث هایی هستن که میخواهیم در این سری یاد بگیریم.

ایجاد دیتابیس

اولین کاری که باید برای استفاده از دیتابیس انجام دهیم ایجاد ان است و در صورتی که قبلا ساخته شده باشد ان را باز میکنیم.برای این کار ما از کلاس sqliteDatabase استفاده میکنیم:

خب خیلی ساده نام دیتابیس خود را مشخص کردیم و به کمک openOrdCreateDatabase دیتابیس را ایجاد کردیم(البته به این موضوع دقت کنید همانطور که از نامش پیداست بررسی میکند در صورت وجود نداشتن همچین دیتابیسی ان را ایجاد میکند در غیر این صورت ان را باز میکند)

ایجاد جدول

خب قدم بعدی ما ایجاد جدول است مانند ایجاد دیتابیس یک متغییر برای نام جدول ایجاد میکنیم.و با استفاده از شی که از sqliteDatabase ایجاد کردیم و نام ان را mydb گذاشتیم برای اینکار استفاده میکنیم:

در اینجا یک جدول به نام mytable ایجاد کردیم و در ان سه ستون با نام های id و name و age قرار دادیم و در جلوی ان ها هم باید نوعشان را مشخص کنیم.در جلوی id نوشتیم PRIMARY KEY این ویژگی مشخص میکند که که این ستون یعنی id نمی تواند مقدار تکراری داشته باشد.
به این شکل که ما جدول را ایجاد کردیم به صورت کوئری است و حتما حتما به فاصله ها و متن های استرینگ اول هم دقت کنید و کوچک ترین اشتباهی در نوشتن ان میتوانید موجب دردسر و خورد شدن اعصاب در اوایل کار با sqlite شود.
پیشنهاد میشود در اوایل کار از try catch برای فهمیدن ایجاد شدن یا نشدن جدول استفاده کنید.

دادن اطلاعات به جدول

تا اینجای کار ما دیتابیس را ایجاد کردیم و یک جدول هم با سه ستون به ان اضافه کردیم.اما جدول ما تا اینجا هیچ مقداری ندارد و لازم است که اطلاعات مورد نظر خود را به ان بدهیم.برای اینکار ما از دو حالت میتوانید استفاده کنیم.حالت اول مانند ایجاد جدول از کوئری نویسی استفاده میکنیم:

در اینجا که مانند قبل از تابع execSQL استفاده شده ابتدا نام جدول را میگوییم سپس ستون ها را مشخص میکنیم و بعد مقدار ها.به تک کوتیشن ها هم دقت کنید.در صورتی که مقدار تکست هست تک کوتیشن بزارین نه دابل کوتیشن.
در حالت دوم دادن مقدار به ستون ها که شاید کم دردسر تر از حالت اول باشد(ولی با کد بیشتر)ما از ContentValues استفاده میکنیم:

خب در اینجا یک شی از contentValues ایجاد کردیم و نام ان را cv گذاشتیم سپس به کمک این شی مقدار ها را دونه دونه در ستون مورد نظر ریختیم.و در اخر با استفاده از تابع insert یه ردیف جدید ایجاد کردیم.چند نکته:
در این حالت تک کوتیش و نکاتی که در حالت اول گفتیم وجود ندارد.
insert یک ردیف جدید ایجاد میکند و اگر شما مقدار جدید بدهید جای این ردیف را نمیگیرید بلکه به عنوان ردیف جدید ایجاد می شود.
مقدار id نباید تکراری باشد و اینکه به کمک مقدار id به ردیف هایمان تسلط داریم.
در ادامه اموزش کار با sqlite  به گرفتن اطلاعات و سایر اموزش های sqlite میپردازیم.امیدوارم اموزش مفید بوده باشد و در ان مشکلی نداشته باشید.
موفق باشید

مطالعه بیشتر