Anda di halaman 1dari 4

Android dan SQLite

Aplikasi android yang menggunakan SQLite sebagai sarana penyimpanan data, tidak akan lepas dengan salah satu public class abstract yaitu SQLiteOpenHelper. Class tersebut akan membantu dalam mengatur pembuatan database dan manajemen versi database.

Untuk Membantu pemahaman mengenai SQLite, buat aplikasi Kamus bahasa Inggris-Indonesia yang sederhana berikut ini: 1. Buat projek dengan nama SqliteDemo

2. Buat Class baru di dalam src/<nama_package> kemudian extends SQLiteOpenHelper

Workshop Android (SQLite) Pius Anggoro

3. Kemudian sesuaikan sintaks pada DataKamus.java hingga menjadi seperti ini:


package ang.example.sqlitedemo; import import import import android.content.ContentValues; android.content.Context; android.database.sqlite.SQLiteDatabase; android.database.sqlite.SQLiteOpenHelper;

public class DataKamus extends SQLiteOpenHelper{ private static final String NAMA_DB = "dbkamus"; public static final String INGGRIS = "inggris"; public static final String INDONESIA = "indonesia"; public DataKamus(Context context) { super(context, NAMA_DB, null, 1 ); } @Override public void onCreate(SQLiteDatabase arg0) { } Workshop Android (SQLite) Pius Anggoro 2

@Override public void onUpgrade(SQLiteDatabase arg0, int arg1, int arg2) { } public void createTable(SQLiteDatabase db){ db.execSQL("DROP TABLE IF EXISTS kamus"); db.execSQL("CREATE TABLE if not exists kamus (" + "id INTEGER PRIMARY KEY AUTOINCREMENT, " + "inggris TEXT, indonesia TEXT);"); } public void generateData (SQLiteDatabase db){ ContentValues cv = new ContentValues(); cv.put(INGGRIS, "run"); cv.put(INDONESIA, "lari"); db.insert("kamus", INGGRIS, cv); cv.put(INGGRIS, "read"); cv.put(INDONESIA, "baca"); db.insert("kamus", INGGRIS, cv); } }

4. Lengkapi file main.xml hingga membentuk tampilan seperti ini:

5. Lengkapi file <Activity>.java menjadi seperti di bawah ini:


package ang.example.sqlitedemo; import android.os.Bundle; ... public class DemoDb extends Activity { private SQLiteDatabase db = null; private Cursor kamusCursor = null; private DataKamus dataKamus = null; public static final String INDONESIA = "indonesia"; public static final String INGGRIS = "inggris"; EditText editInggris; TextView txtIndo;

Workshop Android (SQLite) Pius Anggoro

@Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); dataKamus = new DataKamus(this); db = dataKamus.getWritableDatabase(); dataKamus.createTable(db); dataKamus.generateData(db); setContentView(R.layout.activity_demo_db); editInggris = (EditText) findViewById(R.id.editInggris); txtIndo = (TextView) findViewById(R.id.teksIndonesia); } public void getTerjemahan(View view){ String hasil = ""; String kataInggris= editInggris.getText().toString(); kamusCursor = db.rawQuery("SELECT ID, INGGRIS, INDONESIA " +"FROM kamus WHERE INGGRIS='" +kataInggris +"' order BY INGGRIS", null); if (kamusCursor.moveToFirst()){ hasil = kamusCursor.getString(2); for (; !kamusCursor.isAfterLast(); kamusCursor.moveToNext()){ hasil = kamusCursor.getString(2); } } if (hasil.equals("")){ hasil = "kata tidak ditemukan"; } txtIndo.setText(hasil); } @Override protected void onDestroy() { super.onDestroy(); kamusCursor.close(); db.close(); } }

6. Run SqliteDemo dan lihat hasilnya:

7. Untuk memperkaya pengetahuan anda mengenai Sqlite, silahkan cari referensi yang berhubungan dengan: Menambah, Menghapus dan Menampilkan database dalam ListView. Pre-loaded sqlite database, supaya database selalu ada walaupun aplikasi telah ditutup. Koneksi dengan database di server dengan fitur: HttpConnection, PHP, JSON.

Workshop Android (SQLite) Pius Anggoro

Anda mungkin juga menyukai