Android.database.sqlite.SQLiteCursor

|
Android.database.sqlite.SQLiteCursor
|
bet | 2/16 | Sana | 15.05.2024 | Hajmi | 2,42 Mb. | | #236485 |
Bog'liq Mobil 3Android.database.sqlite.SQLiteCursor klassi so'rovni beradi va shu so'rovga mos qatorlar to'plamini qaytarishga imkon beradi..
Android.database.sqlite.SQLiteQueryBuilder klassi SQL so'rovlarini yaratishga imkon beradi.
Amaliy qism.
Sql iboralarining o'zi android.database.sqlite.SQLiteStatement klassi bilan ifodalanadi, bu esa dinamik ma'lumotlarini ifodalovchiga to'ldiruvchilar yordamida kiritish imkonini beradi.
Android.database.sqlite.SQLiteOpenHelper klassi, agar ular mavjud bo'lmasa, barcha jadvallar bilan ma'lumotlar bazasini yaratishga imkon beradi..
SQLite quyidagi ma'lumotlar tipidagi tizimdan foydalanadi:
INTEGER: javada int ga o'xshash butun sonni ifodalaydi
REAL: java -da float va double -ning analogi bo'lgan suzuvchi nuqta raqamini ifodalaydi
TEXT: java -dagi String va char -ga o'xshash belgilar to'plamini ifodalaydi
BLOB: ikkilik ma'lumotlar majmuasini ifodalaydi, masalan, javadagi int tipidagi tasvir, tasvir
Saqlangan ma'lumotlar java - da mos keladigan turlarni aks ettirishi kerak.
Ma'lumotlar bazasini yaratish va ochish
Android -dagi Activity kodidan yangi ma'lumotlar bazasini yaratish yoki ochish uchun openOrCreateDatabase () usulini chaqirishimiz mumkin. Bu usul uchta parametrni olishi mumkin:
ma'lumotlar bazasi nomi
ish rejimini belgilaydigan raqamli qiymat (odatda MODE_PRIVATE doimiy shaklida)
ma'lumotlar bazasi bilan ishlash uchun kursor yaratish zavodini ifodalovchi SQLiteDatabase.CursorFactory obyekti shaklidagi ixtiyoriy parametr.
Masalan, app.db ma'lumotlar bazasini yaratish:
1
|
SQLiteDatabase db = getBaseContext().openOrCreateDatabase("app.db",
MODE_PRIVATE, null);
|
Ma'lumotlar bazasi so'rovini bajarish uchun SQLiteDatabase sinfining execSQL usulidan foydalanishingiz mumkin. SQL usuli bu usulga o'tkaziladi. Masalan, ma'lumotlar bazasida foydalanuvchilar jadvalini yaratish:
1
2
|
SQLiteDatabase db = getBaseContext().openOrCreateDatabase("app.db", MODE_PRIVATE, null);
db.execSQL("CREATE TABLE IF NOT EXISTS users (name
TEXT, age INTEGER)");
|
Agar bizga nafaqat ifodani bajarish, balki ma'lumotlar bazasidan ba'zi ma'lumotlarni olish kerak bo'lsa, unda rawQuery () usuli qo'llaniladi. Bu usul SQL ifodasini parametr sifatida, shuningdek sql ifodasi uchun qiymatlar to'plamini oladi. Masalan, ma'lumotlar bazasidan barcha ob'ektlarni olish:
2
3
4
5
6
7
8
|
getBaseContext().openOrCreateDatabase("app.db", MODE_PRIVATE, null);
db.execSQL("CREATE TABLE IF NOT EXISTS users (name TEXT, age INTEGER)");
Cursor query = db.rawQuery("SELECT * FROM users;", null); if(query.moveToFirst()){
String name = query.getString(0); int age = query.getInt(1);
}
|
Db.rawQuery () usuli Kursor ob'ektini qaytaradi, uning yordamida biz olingan ma'lumotlarni olishimiz mumkin.
Ma'lumotlar bazasida hech qanday ob'ekt bo'lmaganda vaziyat bo'lishi mumkin va buning uchun query.moveToFirst () usuli yordamida biz ma'lumotlar bazasidan olingan birinchi ob'ektga o'tishga harakat qilamiz. Agar bu usul noto'g'ri bo'lsa, so'rov ma'lumotlar bazasidan hech qanday ma'lumot olmagan..
Endi ma'lumotlar bazasi bilan ishlash uchun oddiy dastur tuzamiz. Buning uchun bizyangi loyiha tuzamiz..
|
| |