Membuat SQLite pada Eclipse untuk Android

Ilmu Informatika : Membuat SQLite pada Eclipse untuk Android. SQLite adalah embedded database (hanya menggunakan sekitar 250KB memori) yang menyediakan fasilitas relational DBMS termasuk SQL.
Referensi lengkap SQLite dapat dilihat di http://www.sqlite.org SQLite tidak hanya digunakan di Android. Setiap aplikasi memiliki instance database tersendiri, dan berbeda dengan shared preference, tidak disediakan fasilitas agar aplikasi dapat membaca database aplikasi lain.
Untuk menggunakan SQLite, sangat dianjurkan menggunakan class helper untuk membuka dan menutup database, menginisiasi tabel dst. Helper juga digunakan saat melakukan upgrade struktur database jika suatu saat aplikasi diupdate. Class helper ini diturunkan dari class SQLiteOpenHelper.

Membuat sqlite dengan eclipse

Untuk membuat programnya, ikuti langkah-langkah berikut ini:

1. Buat layoutnya.

contoh : tambah_mahasiswa.xml
codenya seperti berikut:
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
 xmlns:tools="http://schemas.android.com/tools"
 android:id="@+id/container"
 android:layout_width="match_parent"
 android:layout_height="match_parent"
 tools:context="com.hmkcode.android.Main"
 tools:ignore="MergeRootFrame" >

 <ScrollView
 android:id="@+id/scrollView1"
 android:layout_width="match_parent"
 android:layout_height="match_parent" >

 <LinearLayout
 android:layout_width="match_parent"
 android:layout_height="match_parent"
 android:orientation="vertical" >

 <TextView
 android:id="@+id/textView1"
 android:layout_width="wrap_content"
 android:layout_height="wrap_content"
 android:text="ISI BIODATA"
 android:textAppearance="?android:attr/textAppearanceMedium" />

 <TextView
 android:id="@+id/textView2"
 android:layout_width="wrap_content"
 android:layout_height="wrap_content"
 android:layout_marginLeft="5dp"
 android:layout_marginTop="10dp"
 android:text="@string/labelNIM"
 android:textAppearance="?android:attr/textAppearanceMedium" />

 <EditText
 android:id="@+id/nim"
 android:layout_width="match_parent"
 android:layout_height="wrap_content"
 android:layout_marginLeft="5dp"
 android:layout_marginRight="5dp"
 android:layout_marginTop="0dp"
 android:ems="10" >

 <requestFocus />
 </EditText>

 <TextView
 android:id="@+id/textView3"
 android:layout_width="wrap_content"
 android:layout_height="wrap_content"
 android:layout_marginLeft="5dp"
 android:layout_marginTop="5dp"
 android:text="@string/labelNama"
 android:textAppearance="?android:attr/textAppearanceMedium" />

 <EditText
 android:id="@+id/nama"
 android:layout_width="match_parent"
 android:layout_height="wrap_content"
 android:layout_marginLeft="5dp"
 android:layout_marginRight="5dp"
 android:layout_marginTop="0dp"
 android:ems="10" />

 <TextView
 android:id="@+id/textView4"
 android:layout_width="wrap_content"
 android:layout_height="wrap_content"
 android:layout_marginLeft="5dp"
 android:layout_marginTop="5dp"
 android:text="@string/labelProdi"
 android:textAppearance="?android:attr/textAppearanceMedium" />

 <EditText
 android:id="@+id/prodi"
 android:layout_width="match_parent"
 android:layout_height="wrap_content"
 android:layout_marginLeft="5dp"
 android:layout_marginRight="5dp"
 android:layout_marginTop="0dp"
 android:ems="10" />

 <TextView
 android:id="@+id/textView5"
 android:layout_width="wrap_content"
 android:layout_height="wrap_content"
 android:layout_marginLeft="5dp"
 android:layout_marginTop="5dp"
 android:text="@string/labelJurusan"
 android:textAppearance="?android:attr/textAppearanceMedium" />

 <EditText
 android:id="@+id/jurusan"
 android:layout_width="match_parent"
 android:layout_height="wrap_content"
 android:layout_marginLeft="5dp"
 android:layout_marginRight="5dp"
 android:layout_marginTop="0dp"
 android:ems="10" />

 <TextView
 android:id="@+id/textView6"
 android:layout_width="wrap_content"
 android:layout_height="wrap_content"
 android:layout_marginLeft="5dp"
 android:layout_marginTop="5dp"
 android:text="@string/labelFakultas"
 android:textAppearance="?android:attr/textAppearanceMedium" />

 <EditText
 android:id="@+id/fakultas"
 android:layout_width="match_parent"
 android:layout_height="wrap_content"
 android:layout_marginLeft="5dp"
 android:layout_marginRight="5dp"
 android:layout_marginTop="0dp"
 android:ems="10" />

 <Button
 android:id="@+id/simpan"
 android:layout_width="236dp"
 android:layout_height="wrap_content"
 android:layout_marginLeft="40dp"
 android:layout_marginRight="40dp"
 android:layout_marginTop="10dp"
 android:text="@string/labelButton" />

 </LinearLayout>
 </ScrollView>

</FrameLayout>

tampilan dari tambah_mahasiswa.xml

2. Buat Class DBOpenHelper.java

codenya seperti berikut:

package com.hmkcode.android;

import android.content.Context;
import android.database.sqlite.SQLiteDatabase;
import android.database.sqlite.SQLiteDatabase.CursorFactory;
import android.database.sqlite.SQLiteOpenHelper;

public class DBOpenHelper extends SQLiteOpenHelper {

 public DBOpenHelper(Context context, String name, CursorFactory factory, int version) {
  super(context, name, factory, version);      
 }

 @Override
 public void onCreate(SQLiteDatabase db) {
  // TODO Auto-generated method stub
  String createQueryMahasiswa = "CREATE TABLE mahasiswa (_id integer primary key, " +
   "nim, nama, prodi, jurusan, fakultas);"; 
   
  db.execSQL(createQueryMahasiswa);

 }

 @Override
 public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
  // TODO Auto-generated method stub

 }

}

3. Buat Class Connector.java

package com.hmkcode.android;

import android.content.ContentValues;
import android.content.Context;
import android.database.SQLException;
import android.database.sqlite.SQLiteDatabase;

public class Connector {
 private static final String DB_NAME = "Beasiswa.db";
 private SQLiteDatabase database;
 private DBOpenHelper DBOpenHelper;
  
 public Connector(Context context) {
  DBOpenHelper = new DBOpenHelper(context, DB_NAME, null, 1);
 }
 
 public void open() throws SQLException {
  // open database in reading/writing mode
  database = DBOpenHelper.getWritableDatabase();
 }
 
 public void close() {
  if (database != null)
  database.close();
 }
 
 public void insertDataMahasiswa(String nim, String nama, String prodi, String jurusan, String fakultas) {
  ContentValues newCon = new ContentValues();
 
  newCon.put("nim", nim);
  newCon.put("nama", nama);
  newCon.put("prodi", prodi);
  newCon.put("jurusan", jurusan);
  newCon.put("fakultas", fakultas);
  
  open();
  database.insert("mahasiswa", null, newCon);
  close();
 } 
}

4. Setting Main.java seperti berikut:

package com.hmkcode.android;

import android.support.v7.app.ActionBarActivity;
import android.support.v7.app.ActionBar;
import android.support.v4.app.Fragment;
import android.app.Activity;
import android.os.Bundle;
import android.view.LayoutInflater;
import android.view.Menu;
import android.view.MenuItem;
import android.view.View;
import android.view.View.OnClickListener;
import android.view.ViewGroup;
import android.widget.Button;
import android.widget.EditText;
import android.widget.Toast;
import android.os.Build;

public class Main extends Activity implements OnClickListener{
 EditText nimA, namaA, prodiA, jurusanA, fakultasA;
 String nim, nama, prodi, jurusan, fakultas;
 Button btSimpan;
 
 @Override
 protected void onCreate(Bundle savedInstanceState) {
  super.onCreate(savedInstanceState);
  setContentView(R.layout.tambah_mahasiswa);
  nimA = (EditText)findViewById(R.id.nim);
  namaA = (EditText)findViewById(R.id.nama);
  prodiA = (EditText)findViewById(R.id.prodi);
  jurusanA = (EditText)findViewById(R.id.jurusan);
  fakultasA = (EditText)findViewById(R.id.fakultas);
  
  btSimpan = (Button) findViewById(R.id.simpan);
  btSimpan.setOnClickListener(Main.this);
 }

 @Override
 public void onClick(View view) {
  // TODO Auto-generated method stub
  switch (view.getId()) {
   case R.id.simpan :
    nim = nimA.getText().toString();
   nama = namaA.getText().toString();
   prodi = prodiA.getText().toString();
   jurusan = jurusanA.getText().toString();
   fakultas = fakultasA.getText().toString();
   
   Connector con = new Connector(this);
   con.insertDataMahasiswa(nim, nama, prodi, jurusan, fakultas);
   con.close();
   Toast.makeText(Main.this,"Data Berhasil Disimpan",Toast.LENGTH_LONG).show();
   break;
   }  
 }
}

5. Dan yang terakhir setting pada res/values/strings.xml ubah seperti berikut:

<resources>
<string name="app_name">SQLite Khoirul</string>
<string name="hello_world">Hello world!</string>
<string name="action_settings">Settings</string>
<string name="labelNIM">NIM</string>
<string name="labelNama">Nama</string>
<string name="labelProdi">Prodi</string>
<string name="labelJurusan">Jurusan</string>
<string name="labelFakultas">Fakultas</string>
<string name="labelButton">Simpan</string>
</resources>

6. Kemudian jalankan dengan Virtual Andoidnya, dan inilah hasilnya :

Input data


Data yang terimpan

Sekian tutorial untuk membuat SQLite database.
Demikian artikel mengenai Membuat SQLite pada Eclipse untuk Android. Semoga bermanfaat untuk sobat semua.
Nikmati Jasa & Layanan yang ada di www.isrul.com, diantaranya:
1. Jasa Pembuatan dan Verifikasi Akun Paypal dengan VCC (Valid 2 atau 3 Tahun)
2. Jual Akun Adsense Non Hosted Indonesia (0899-5832-699)
3. Penulis Tamu di Isrul.com

4 Responses to "Membuat SQLite pada Eclipse untuk Android"

  1. Gan kalo untuk menampilkan di list view nya gimana ?
    liat di pya org lain beda lg cara database ya...
    mohon pencerahan y gan

    ReplyDelete
  2. bang kalo mau bikin fungsi hapusnya gmana ?

    ReplyDelete
  3. kok gak bisa di copy gan . penting nih untuk tugas gue. tolong !!!

    ReplyDelete

Jika anda bertanya, jangan lupa mencentang "Notify Me" di bagian kanan bawah, agar mendapat pemberitahuan jika pertanyaan anda telah kami jawab.
Terimakasih telah menyempatkan waktu berkomentar...