android.database.sqlite.SQLiteQueryBuilder klassi SQL so'rovlarini yaratishga
imkon beradi.
android.database.sqlite.SQLiteOpenHelper klassi, agar ular mavjud bo'lmasa,
barcha jadvallar bilan ma'lumotlar bazasini yaratishga imkon beradi.
SQLite quyidagi ma'lumotlar turi tizimidan foydalanadi:
•
INTEGER: javadagi int turiga o'xshash butun sonni ifodalaydi.
•
REAL: javada float va double -ga o'xshash raqamni ifodalaydi.
•
TEXT: javada String va char -ga o'xshash belgilar majmuini ifodalaydi.
•
BLOB: binar ma'lumotlarning massivini ifodalaydi.
Ma'lumotlar bazasini yaratish va ochish.
uchun openOrCreateDatabase() metodini chaqirishimiz mumkin. Ushbu metod
uchta parametrni olishi mumkin:
•
ma'lumotlar bazasi nomi.
•
ishlash
rejimini
aniqlaydigan
raqamli
qiymat
(odatda MODE_PRIVATE doimiysi shaklida).
•
ma'lumotlar bazasi bilan ishlash uchun kursor yaratish factorysi-ni
belgilaydigan SQLiteDatabase.CursorFactory ob'ekti
ko'rinishidagi
ixtiyoriy parametr.
Masalan, app.db ma'lumotlar bazasini yaratish:
SQLiteDatabase
db
=
getBaseContext().openOrCreateDatabase("app.db",
MODE_PRIVATE, null);
Ma'lumotlar bazasi so'rovini bajarish uchun SQLiteDatabase sinfining execSQL usulidan foydalanishingiz mumkin.
Masalan, ma'lumotlar bazasida users jadvalini yaratish:
SQLiteDatabase
db
=
getBaseContext().openOrCreateDatabase("app.db",
MODE_PRIVATE, null);
db.execSQL("CREATE TABLE IF NOT EXISTS users (name TEXT, age
INTEGER)");
Ma'lumotlar
bazasidan
ba'zi
ma'lumotlarni
olish
kerak
bo'lsa,
unda rawQuery() metodi qo'llaniladi.
Masalan, ma'lumotlar bazasidan barcha ob’ektlarni olish:
SQLiteDatabase
db
=
getBaseContext().openOrCreateDatabase("app.db",
MODE_PRIVATE, null);
db.execSQL("CREATE TABLE IF NOT EXISTS users (ismi TEXT, yoshi
INTEGER)");
Cursor query = db.rawQuery("SELECT * FROM users;", null);
if(query.moveToFirst()){
String ismi = query.getString(0);
int yoshi = query.getInt(1);
}
db.rawQuery() metodi qabul qilingan ma'lumotlarni olishimiz mumkin bo'lgan
Cursor ob'ektini qaytaradi.
Ma'lumotlar
bazasida
ob'ektlar
bo'lmasligi
mumkin
va
buning
uchun query.moveToFirst() metodi yordamida ma'lumotlar bazasidan olingan
birinchi ob'ektga o'tadi. Agar bu metod false qiymatini qaytarsa, demak so'rov
ma'lumotlar bazasidan hech qanday ma'lumot olmagan.
Endi ma'lumotlar bazasi bilan ishlash uchun oddiy ilova tuzamiz. Buning uchun