Dalam tutorial ini saya mengambil contoh untuk menyimpan kontak pengguna di database SQLite. Saya menggunakan tabel yang disebut Kontak untuk menyimpan kontak pengguna. Tabel ini berisi tiga kolom id (INT), nama (TEXT), phone_number (TEXT).
Writing Contact Class
Sebelum melangkah lebih jauh, Anda perlu menulis kelas Kontak Anda dengan semua metode pengambil dan penyetel untuk mempertahankan kontak tunggal sebagai objek.
package com.androidhive.androidsqlite; public class Contact { //private variables int _id; String _name; String _phone_number; // Empty constructor public Contact(){ } // constructor public Contact( int id, String name, String _phone_number){ this ._id = id; this ._name = name; this ._phone_number = _phone_number; } // constructor public Contact(String name, String _phone_number){ this ._name = name; this ._phone_number = _phone_number; } // getting ID public int getID(){ return this ._id; } // setting id public void setID( int id){ this ._id = id; } // getting name public String getName(){ return this ._name; } // setting name public void setName(String name){ this ._name = name; } // getting phone number public String getPhoneNumber(){ return this ._phone_number; } // setting phone number public void setPhoneNumber(String phone_number){ this ._phone_number = phone_number; } } |
Writing SQLite Database Handler Class
Kita perlu menulis kelas kita sendiri untuk menangani semua operasi database CRUD (Create, Read, Update and Delete).
1. Buat sebuah proyek baru dengan masuk ke File ⇒ New Android Project.
2. Setelah proyek dibuat, buat kelas baru di direktori src proyek Anda dan beri nama DatabaseHandler.java (Klik Kanan pada src / paket ⇒ Kelas Baru ⇒)
3. Sekarang perpanjang kelas DatabaseHandler.java Anda dari SQLiteOpenHelper.
public class DatabaseHandler extends SQLiteOpenHelper { |
4. Setelah memperluas kelas Anda dari SQLiteOpenHelper Anda perlu mengganti dua metode onCreate () dan onUpgrage ()
onCreate () - Di sinilah kita perlu menulis membuat pernyataan tabel. Ini disebut saat database dibuat.
onUpgrade () - Metode ini disebut ketika database diupgrade seperti memodifikasi struktur tabel, menambahkan kendala ke database dll,
public class DatabaseHandler extends SQLiteOpenHelper { // All Static variables // Database Version private static final int DATABASE_VERSION = 1 ; // Database Name private static final String DATABASE_NAME = "contactsManager" ; // Contacts table name private static final String TABLE_CONTACTS = "contacts" ; // Contacts Table Columns names private static final String KEY_ID = "id" ; private static final String KEY_NAME = "name" ; private static final String KEY_PH_NO = "phone_number" ; public DatabaseHandler(Context context) { super (context, DATABASE_NAME, null , DATABASE_VERSION); } // Creating Tables @Override public void onCreate(SQLiteDatabase db) { String CREATE_CONTACTS_TABLE = "CREATE TABLE " + TABLE_CONTACTS + "(" + KEY_ID + " INTEGER PRIMARY KEY," + KEY_NAME + " TEXT," + KEY_PH_NO + " TEXT" + ")" ; db.execSQL(CREATE_CONTACTS_TABLE); } // Upgrading database @Override public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) { // Drop older table if existed db.execSQL( "DROP TABLE IF EXISTS " + TABLE_CONTACTS); // Create tables again onCreate(db); } |
⇒All CRUD Operations (Create, Read, Update and Delete)
Sekarang kita perlu menulis metode untuk menangani semua operasi baca dan tulis database. Disini kami menerapkan metode berikut untuk tabel kontak kami.
// Adding new contact public void addContact(Contact contact) {} // Getting single contact public Contact getContact( int id) {} // Getting All Contacts public List<Contact> getAllContacts() {} // Getting contacts Count public int getContactsCount() {} // Updating single contact public int updateContact(Contact contact) {} // Deleting single contact public void deleteContact(Contact contact) {} |