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


onCreate(): ma'lumotlar bazasiga kirishga urinish paytida, lekin ma'lumotlar bazasi hali yaratilmaganida chaqiriladi. onUpgrade()



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

onCreate(): ma'lumotlar bazasiga kirishga urinish paytida, lekin ma'lumotlar bazasi hali yaratilmaganida chaqiriladi.

  • onUpgrade(): Ma'lumotlar bazasi sxemasini yangilash kerak bo'lganda chaqiriladi. Bu erda siz avval yaratilgan ma'lumotlar bazasini onCreate() da qayta yaratib, eski ma'lumotlar bazasidan yangisiga mos keladigan o'zgartirish qoidalarini o'rnatishingiz mumkin.

    Shuning uchun, MainActivity klassi bilan bir xil papkada loyihaga yangi DatabaseHelper sinfini qo'shing:

    package com.example.sqliteapp;
    import android.database.sqlite.SQLiteOpenHelper;
    import android.database.sqlite.SQLiteDatabase;
    import android.content.Context;
    public class DatabaseHelper extends SQLiteOpenHelper {
    private static final String DATABASE_NAME = "userstore.db"; // название бд
    private static final int SCHEMA = 1; // ma'lumotlar bazasi versiyasi
    static final String TABLE = "users"; // ma'lumotlar bazasidagi jadval nomi
    // ustun(maydon) nomlari
    public static final String COLUMN_ID = "_id";
    public static final String COLUMN_NAME = "name";
    public static final String COLUMN_YEAR = "year";
    public DatabaseHelper(Context context) {
    super(context, DATABASE_NAME, null, SCHEMA);
    }
    @Override
    public void onCreate(SQLiteDatabase db) {
    db.execSQL("CREATE TABLE users(" + COLUMN_ID
    + " INTEGER PRIMARY KEY AUTOINCREMENT," + COLUMN_NAME
    + " TEXT, " + COLUMN_YEAR + " INTEGER);");
    // dastlabki ma'lumotlarni qo'shish
    db.execSQL("INSERT INTO "+ TABLE +"(" + COLUMN_NAME
    + ", " + COLUMN_YEAR + ") VALUES('Том Смит', 1981);");
    }
    @Override
    public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
    db.execSQL("DROP TABLE IF EXISTS "+TABLE);
    onCreate(db);
    }
    }
    Agar ma'lumotlar bazasi yo'q yoki uning versiyasi(SCHEMA o'zgaruvchisida o'rnatilgan) joriy versiyadan yuqori bo'lsa, onCreate() usuli ishga tushiriladi.
    Ma'lumotlar bazasiga qarshi so'rovlarni bajarish uchun bizga ma'lumotlar bazasini ifodalovchi SQLiteDatabase obyekti kerak. onCreate() usuli dasturlar bazasini parametr sifatida oladi.

    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