13-Ma’ruza Mavzu: Ma’lumotlar bazasi. Reja: sqlite ma'lumotlar bazasiga ulanish



Download 83,29 Kb.
bet6/10
Sana23.06.2023
Hajmi83,29 Kb.
#953137
1   2   3   4   5   6   7   8   9   10
Bog'liq
13-maruza

MainActivity sinfining kodini quyidagicha o'zgartiraylik:
package com.example.sqliteapp;
import androidx.appcompat.app.AppCompatActivity;
import android.widget.SimpleCursorAdapter;
import android.database.Cursor;
import android.database.sqlite.SQLiteDatabase;
import android.os.Bundle;
import android.widget.ListView;
import android.widget.TextView;
public class MainActivity extends AppCompatActivity {
ListView userList;
TextView header;
DatabaseHelper databaseHelper;
SQLiteDatabase db;
Cursor userCursor;
SimpleCursorAdapter userAdapter;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
header =(TextView)findViewById(R.id.header);
userList =(ListView)findViewById(R.id.list);
databaseHelper = new DatabaseHelper(getApplicationContext());
}
@Override
public void onResume() {
super.onResume();
// ulanishni ochamiz
db = databaseHelper.getReadableDatabase();
// ma'lumotlar bazasidan kursor ko'rinishidagi ma'lumotlarni olish
userCursor = db.rawQuery("select * from "+ DatabaseHelper.TABLE, null);
// biz ListView -da kursordan qaysi ustunlar ko'rsatilishini aniqlaymiz
String[] headers = new String[] {DatabaseHelper.COLUMN_NAME, DatabaseHelper.COLUMN_YEAR};
// adapter yarating, kursorni unga o'tkazing
userAdapter = new SimpleCursorAdapter(this, android.R.layout.two_line_list_item,
userCursor, headers, new int[]{android.R.id.text1, android.R.id.text2}, 0);
header.setText(userCursor.getCount()+" elementlar topildi");
userList.setAdapter(userAdapter);
}
@Override
public void onDestroy(){
super.onDestroy();
// Ulanish va kursorni yopish
db.close();
userCursor.close();
}
}
onCreate() usuli SQLiteOpenHelper obyektini yaratadi. Ma'lumotlar bazasi bilan ishlash uchun ob'ektlarni ishga tushirish onCreate() usulidan keyin ishga tushadigan onResume() usulida sodir bo'ladi.
Ma'lumotlar bazasi ob'ektini olish uchun getReadableDatabase() usulidan foydalaning(o'qish uchun ma'lumotlar bazasini oling) yoki getWritableDatabase(). Bu holda biz faqat ma'lumotlar bazasidan ma'lumotlarni o'qiymiz, biz birinchi usuldan foydalanamiz:
db = sqlHelper.getReadableDatabase();
Ma'lumot olish va Cursor. Android SQLiteDatabase ob'ektini so'rashning turli usullarini taqdim etadi. Ko'p hollarda biz ikkita parametrni oladigan rawQuery() usulidan foydalanishimiz mumkin: SELECT SQL ifodasi va so'rov parametrlarini ko'rsatuvchi qo'shimcha parametr.
So'rovni bajargandan so'ng, rawQuery() SQL so'rovining natijasini saqlaydigan Cursor ob'ektini qaytaradi:
userCursor = db.rawQuery("select * from "+ DatabaseHelper.TABLE, null);
Cursor klassi olib kelishni manipulyatsiya qilishning bir qancha usullarini taklif etadi, xususan:
getCount(): ma'lumotlar bazasidan olingan ob'ektlar sonini oladi
moveToFirst() va moveToNext() usullari birinchi va keyingi tanlovga o'tishga imkon beradi. IsAfterLast() usuli tanlovning oxiriga yetganligini tekshirishga imkon beradi.
get*(columnIndex) usullari(masalan, getLong(), getString()) ustunlar indeksi bo'yicha joriy qatorning berilgan ustuniga murojaat qilish imkonini beradi.

Download 83,29 Kb.

Do'stlaringiz bilan baham:
1   2   3   4   5   6   7   8   9   10




Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©hozir.org 2024
ma'muriyatiga murojaat qiling

kiriting | ro'yxatdan o'tish
    Bosh sahifa
юртда тантана
Боғда битган
Бугун юртда
Эшитганлар жилманглар
Эшитмадим деманглар
битган бодомлар
Yangiariq tumani
qitish marakazi
Raqamli texnologiyalar
ilishida muhokamadan
tasdiqqa tavsiya
tavsiya etilgan
iqtisodiyot kafedrasi
steiermarkischen landesregierung
asarlaringizni yuboring
o'zingizning asarlaringizni
Iltimos faqat
faqat o'zingizning
steierm rkischen
landesregierung fachabteilung
rkischen landesregierung
hamshira loyihasi
loyihasi mavsum
faolyatining oqibatlari
asosiy adabiyotlar
fakulteti ahborot
ahborot havfsizligi
havfsizligi kafedrasi
fanidan bo’yicha
fakulteti iqtisodiyot
boshqaruv fakulteti
chiqarishda boshqaruv
ishlab chiqarishda
iqtisodiyot fakultet
multiservis tarmoqlari
fanidan asosiy
Uzbek fanidan
mavzulari potok
asosidagi multiservis
'aliyyil a'ziym
billahil 'aliyyil
illaa billahil
quvvata illaa
falah' deganida
Kompyuter savodxonligi
bo’yicha mustaqil
'alal falah'
Hayya 'alal
'alas soloh
Hayya 'alas
mavsum boyicha


yuklab olish