TUTORIAL ANDROID MENGGUNAKAN SQLITE
1. Buka Android Studio
2. Buat Projek Baru
3. Pilih Empty Activity
4. Berinama Projek yang akan kita buat (nama project : LatihanSQLite)
5. Minimun SDK 16
6. Setelah selesai kita buat sebuah Class Java dengan nama [Link],
[Link] ini adalah proses pembuatan Database SQLiteSimpan dengan Nama
[Link]
7. Lalu ubah code [Link] dengan code berikut :
package [Link];
import [Link];
import [Link];
import [Link];
import [Link];
public class DataHelper extends SQLiteOpenHelper {
private static final String DATABASE_NAME = "[Link]";
private static final int DATABASE_VERSION = 1;
public DataHelper(Context context) {
super(context, DATABASE_NAME, null, DATABASE_VERSION);
// TODO Auto-generated constructor stub
}
@Override
public void onCreate(SQLiteDatabase db) {
// TODO Auto-generated method stub
String sql = "create table biodata(no integer primary key, nama text null, tgl text null,
jk text null, alamat text null);";
Log.d("Data", "onCreate: " + sql);
[Link](sql);
sql = "INSERT INTO biodata (no, nama, tgl, jk, alamat) VALUES ('1', 'Fachran', '1987-07-27',
'Laki-laki','Bogor');";
[Link](sql);
}
@Override
public void onUpgrade(SQLiteDatabase arg0, int arg1, int arg2) {
// TODO Auto-generated method stub
}
}
8. Buat sebuah file dengan nama [Link] dan letakkan pada values/[Link]
Lalu ubah code menjadi seperti berikut :
<resources>
<!-- Default screen margins, per the Android Design guidelines. -->
<dimen name="activity_horizontal_margin">16dp</dimen>
<dimen name="activity_vertical_margin">16dp</dimen>
</resources>
9. Ubah file values/[Link] menjadi berikut :
<?xml version="1.0" encoding="utf-8"?>
<resources>
<color name="purple_200">#FFBB86FC</color>
<color name="purple_500">#FF6200EE</color>
<color name="purple_700">#FF3700B3</color>
<color name="teal_200">#FF03DAC5</color>
<color name="teal_700">#FF018786</color>
<color name="black">#FF000000</color>
<color name="white">#FFFFFFFF</color>
<color name="colorPrimary">#3F51B5</color>
<color name="colorPrimaryDark">#303F9F</color>
<color name="colorAccent">#000</color>
</resources>
10. Pada Layout activity_main.xml ubah code menjadi berikut :
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="[Link]
xmlns:tools="[Link]
android:layout_width="match_parent"
android:layout_height="match_parent"
android:paddingBottom="@dimen/activity_vertical_margin"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
tools:context="[Link]">
<ListView
android:id="@+id/listView1"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_alignParentTop="true"
android:layout_alignParentRight="true"
android:layout_alignParentEnd="true"
android:layout_above="@+id/button2">
</ListView>
<Button
android:id="@+id/button2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
style="?android:attr/borderlessButtonStyle"
android:drawableLeft="@drawable/icon_add"
android:text="Buat Biodata Baru"
android:layout_alignParentBottom="true"
android:layout_alignParentLeft="true"
android:layout_alignParentStart="true" />
</RelativeLayout>
11. Kemudian pada [Link] ubah code menjadi berikut :
package [Link];
import [Link];
import [Link];
import [Link];
import [Link];
import [Link];
import [Link];
import [Link];
import [Link];
import [Link];
import [Link];
import [Link];
import [Link];
import [Link];
import [Link];
public class MainActivity extends AppCompatActivity {
String[] daftar;
ListView ListView01;
Menu menu;
protected Cursor cursor;
DataHelper dbcenter;
public static MainActivity ma;
@Override
protected void onCreate(Bundle savedInstanceState) {
[Link](savedInstanceState);
setContentView([Link].activity_main);
Button btn=(Button)findViewById([Link].button2);
[Link](new [Link]() {
@Override
public void onClick(View arg0) {
// TODO Auto-generated method stub
Intent inte = new Intent([Link], [Link]);
startActivity(inte);
}
});
ma = this;
dbcenter = new DataHelper(this);
RefreshList();
}
public void RefreshList(){
SQLiteDatabase db = [Link]();
cursor = [Link]("SELECT * FROM biodata",null);
daftar = new String[[Link]()];
[Link]();
for (int cc=0; cc < [Link](); cc++){
[Link](cc);
daftar[cc] = [Link](1).toString();
}
ListView01 = (ListView)findViewById([Link].listView1);
[Link](new ArrayAdapter(this, [Link].simple_list_item_1,
daftar));
[Link](true);
[Link](new OnItemClickListener() {
public void onItemClick(AdapterView arg0, View arg1, int arg2, long arg3) {
final String selection = daftar[arg2]; //.getItemAtPosition(arg2).toString();
final CharSequence[] dialogitem = {"Lihat Biodata", "Update Biodata", "Hapus
Biodata"};
[Link] builder = new [Link]([Link]);
[Link]("Pilihan");
[Link](dialogitem, new [Link]() {
public void onClick(DialogInterface dialog, int item) {
switch(item){
case 0 :
Intent i = new Intent(getApplicationContext(), [Link]);
[Link]("nama", selection);
startActivity(i);
break;
case 1 :
Intent in = new Intent(getApplicationContext(), [Link]);
[Link]("nama", selection);
startActivity(in);
break;
case 2 :
SQLiteDatabase db = [Link]();
[Link]("delete from biodata where nama = '"+selection+"'");
RefreshList();
break;
}
}
});
[Link]().show();
}});
((ArrayAdapter)[Link]()).notifyDataSetInvalidated();
}
}
Jika ada yang berwarna merah error, abaikan saja dulu, karena kita belum membuat
class yang lain.
12. Buat 3 Empty Activity baru, Beri nama Activity Name sebagai berikut :
1. BuatBiodata
2. LihatBiodata
3. UpdateBiodata
13. Pada BuatBiodata isi dengan code berikut :
package [Link];
import [Link];
import [Link];
import [Link];
import [Link];
import [Link];
import [Link];
import [Link];
import [Link];
public class BuatBiodata extends AppCompatActivity {
protected Cursor cursor;
DataHelper dbHelper;
Button ton1, ton2;
EditText text1, text2, text3, text4, text5;
@Override
protected void onCreate(Bundle savedInstanceState) {
[Link](savedInstanceState);
setContentView([Link].activity_buat_biodata);
dbHelper = new DataHelper(this);
text1 = (EditText) findViewById([Link].editText1);
text2 = (EditText) findViewById([Link].editText2);
text3 = (EditText) findViewById([Link].editText3);
text4 = (EditText) findViewById([Link].editText4);
text5 = (EditText) findViewById([Link].editText5);
ton1 = (Button) findViewById([Link].button1);
ton2 = (Button) findViewById([Link].button2);
[Link](new [Link]() {
@Override
public void onClick(View arg0) {
// TODO Auto-generated method stub
SQLiteDatabase db = [Link]();
[Link]("insert into biodata(no, nama, tgl, jk, alamat) values('" +
[Link]().toString() + "','" +
[Link]().toString() + "','" +
[Link]().toString() + "','" +
[Link]().toString() + "','" +
[Link]().toString() + "')");
[Link](getApplicationContext(), "Berhasil", Toast.LENGTH_LONG).show();
[Link]();
finish();
}
});
[Link](new [Link]() {
@Override
public void onClick(View arg0) {
// TODO Auto-generated method stub
finish();
}
});
}
14. Pada LihatBiodata isi dengan code berikut :
package [Link];
import [Link];
import [Link];
import [Link];
import [Link];
import [Link];
import [Link];
import [Link];
public class LihatBiodata extends AppCompatActivity {
protected Cursor cursor;
DataHelper dbHelper;
Button ton2;
TextView text1, text2, text3, text4, text5;
@Override
protected void onCreate(Bundle savedInstanceState) {
[Link](savedInstanceState);
setContentView([Link].activity_lihat_biodata);
dbHelper = new DataHelper(this);
text1 = (TextView) findViewById([Link].textView1);
text2 = (TextView) findViewById([Link].textView2);
text3 = (TextView) findViewById([Link].textView3);
text4 = (TextView) findViewById([Link].textView4);
text5 = (TextView) findViewById([Link].textView5);
SQLiteDatabase db = [Link]();
cursor = [Link]("SELECT * FROM biodata WHERE nama = '" +
getIntent().getStringExtra("nama") + "'",null);
[Link]();
if ([Link]()>0)
{
[Link](0);
[Link]([Link](0).toString());
[Link]([Link](1).toString());
[Link]([Link](2).toString());
[Link]([Link](3).toString());
[Link]([Link](4).toString());
}
ton2 = (Button) findViewById([Link].button1);
[Link](new [Link]() {
@Override
public void onClick(View arg0) {
// TODO Auto-generated method stub
finish();
}
});
}
15. Pada UpdateBiodata isi dengan code berikut :
package [Link];
import [Link];
import [Link];
import [Link];
import [Link];
import [Link];
import [Link];
import [Link];
import [Link];
public class UpdateBiodata extends AppCompatActivity {
protected Cursor cursor;
DataHelper dbHelper;
Button ton1, ton2;
EditText text1, text2, text3, text4, text5;
@Override
protected void onCreate(Bundle savedInstanceState) {
[Link](savedInstanceState);
setContentView([Link].activity_update_biodata);
dbHelper = new DataHelper(this);
text1 = (EditText) findViewById([Link].editText1);
text2 = (EditText) findViewById([Link].editText2);
text3 = (EditText) findViewById([Link].editText3);
text4 = (EditText) findViewById([Link].editText4);
text5 = (EditText) findViewById([Link].editText5);
SQLiteDatabase db = [Link]();
cursor = [Link]("SELECT * FROM biodata WHERE nama = '" +
getIntent().getStringExtra("nama") + "'",null);
[Link]();
if ([Link]()>0)
{
[Link](0);
[Link]([Link](0).toString());
[Link]([Link](1).toString());
[Link]([Link](2).toString());
[Link]([Link](3).toString());
[Link]([Link](4).toString());
}
ton1 = (Button) findViewById([Link].button1);
ton2 = (Button) findViewById([Link].button2);
// daftarkan even onClick pada btnSimpan
[Link](new [Link]() {
@Override
public void onClick(View arg0) {
// TODO Auto-generated method stub
SQLiteDatabase db = [Link]();
[Link]("update biodata set nama='"+
[Link]().toString() +"', tgl='" +
[Link]().toString()+"', jk='"+
[Link]().toString() +"', alamat='" +
[Link]().toString() + "' where no='" +
[Link]().toString()+"'");
[Link](getApplicationContext(), "Berhasil", Toast.LENGTH_LONG).show();
[Link]();
finish();
}
});
[Link](new [Link]() {
@Override
public void onClick(View arg0) {
// TODO Auto-generated method stub
finish();
}
});
}
16. Ubah layout activity_buat_biodata.xml dengan code berikut :
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="[Link]
xmlns:tools="[Link]
android:layout_width="match_parent"
android:layout_height="match_parent"
android:paddingBottom="@dimen/activity_vertical_margin"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
tools:context=".BuatBiodata" >
<EditText
android:id="@+id/editText1"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_alignLeft="@+id/textView1"
android:layout_below="@+id/textView1"
android:inputType="number"
android:maxLength="10">
<requestFocus />
</EditText>
<TextView
android:id="@+id/textView1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_alignParentTop="true"
android:text="Nomor" />
<TextView
android:id="@+id/textView2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignLeft="@+id/editText1"
android:layout_below="@+id/editText1"
android:layout_marginTop="10dp"
android:text="Nama" />
<EditText
android:id="@+id/editText2"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_alignLeft="@+id/textView2"
android:layout_below="@+id/textView2"
android:inputType="text"
android:maxLength="20"/>
<TextView
android:id="@+id/textView3"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignLeft="@+id/editText2"
android:layout_below="@+id/editText2"
android:layout_marginTop="10dp"
android:text="Tanggal Lahir" />
<EditText
android:id="@+id/editText3"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_alignLeft="@+id/textView3"
android:layout_below="@+id/textView3"
android:inputType="date"/>
<TextView
android:id="@+id/textView4"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignLeft="@+id/editText3"
android:layout_below="@+id/editText3"
android:layout_marginTop="10dp"
android:text="Jenis Kelamin" />
<EditText
android:id="@+id/editText4"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_alignLeft="@+id/textView4"
android:layout_below="@+id/textView4"
android:inputType="text"
android:maxLength="1"
android:hint="L atau P"/>
<TextView
android:id="@+id/textView5"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignLeft="@+id/editText4"
android:layout_below="@+id/editText4"
android:layout_marginTop="10dp"
android:text="Alamat" />
<EditText
android:id="@+id/editText5"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_alignLeft="@+id/textView5"
android:layout_below="@+id/textView5"
android:maxLength="100"
android:inputType="text"/>
<Button
android:id="@+id/button1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignLeft="@+id/editText5"
android:layout_alignParentBottom="true"
style="?android:attr/borderlessButtonStyle"
android:drawableLeft="@drawable/ic_done"
android:text="Simpan" />
<Button
android:id="@+id/button2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Kembali"
style="?android:attr/borderlessButtonStyle"
android:drawableLeft="@drawable/ic_arrow"
android:layout_alignParentBottom="true"
android:layout_alignRight="@+id/editText5"
android:layout_alignEnd="@+id/editText5" />
</RelativeLayout>
17. Ubah layout activity_lihat_biodata.xml dengan code berikut :
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="[Link]
xmlns:tools="[Link]
android:layout_width="match_parent"
android:layout_height="match_parent"
android:paddingBottom="@dimen/activity_vertical_margin"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
tools:context=".LihatBiodata" >
<TextView
android:id="@+id/textView1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentRight="true"
android:layout_alignParentTop="true"
android:layout_marginRight="104dp"
android:layout_marginTop="20dp"
android:text="TextView" />
<TextView
android:id="@+id/textView2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignRight="@+id/textView1"
android:layout_below="@+id/textView1"
android:layout_marginTop="20dp"
android:text="TextView" />
<TextView
android:id="@+id/textView3"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignLeft="@+id/textView2"
android:layout_below="@+id/textView2"
android:layout_marginTop="20dp"
android:text="TextView" />
<TextView
android:id="@+id/textView4"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignLeft="@+id/textView3"
android:layout_below="@+id/textView3"
android:layout_marginTop="20dp"
android:text="TextView" />
<TextView
android:id="@+id/textView5"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignRight="@+id/textView4"
android:layout_below="@+id/textView4"
android:layout_marginTop="20dp"
android:text="TextView" />
<TextView
android:id="@+id/TextView05"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignBaseline="@+id/textView5"
android:layout_alignBottom="@+id/textView5"
android:layout_alignLeft="@+id/TextView03"
android:text="Alamat" />
<TextView
android:id="@+id/TextView03"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignBaseline="@+id/textView4"
android:layout_alignBottom="@+id/textView4"
android:layout_alignLeft="@+id/TextView04"
android:text="Jenis Kelamin" />
<TextView
android:id="@+id/TextView04"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignBaseline="@+id/textView3"
android:layout_alignBottom="@+id/textView3"
android:layout_alignLeft="@+id/TextView02"
android:text="Tanggal Lahir" />
<TextView
android:id="@+id/TextView02"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignBaseline="@+id/textView2"
android:layout_alignBottom="@+id/textView2"
android:layout_alignLeft="@+id/TextView01"
android:text="Nama" />
<TextView
android:id="@+id/TextView01"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_above="@+id/textView2"
android:layout_alignParentLeft="true"
android:text="Nomor" />
<Button
android:id="@+id/button1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignLeft="@+id/TextView05"
android:layout_below="@+id/TextView05"
android:layout_marginTop="34dp"
android:text="Kembali"
style="?android:attr/borderlessButtonStyle"
android:drawableLeft="@drawable/ic_arrow"/>
</RelativeLayout>
18. Ubah layout activity_update_biodata.xml :
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="[Link]
xmlns:tools="[Link]
android:layout_width="match_parent"
android:layout_height="match_parent"
android:paddingBottom="@dimen/activity_vertical_margin"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
tools:context=".UpdateBiodata" >
<EditText
android:id="@+id/editText1"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_alignLeft="@+id/textView1"
android:layout_below="@+id/textView1"
android:inputType="number"
android:maxLength="10">
<requestFocus />
</EditText>
<TextView
android:id="@+id/textView1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_alignParentTop="true"
android:text="Nomor" />
<TextView
android:id="@+id/textView2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignLeft="@+id/editText1"
android:layout_below="@+id/editText1"
android:layout_marginTop="10dp"
android:text="Nama" />
<EditText
android:id="@+id/editText2"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_alignLeft="@+id/textView2"
android:layout_below="@+id/textView2"
android:inputType="text"
android:maxLength="20"/>
<TextView
android:id="@+id/textView3"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignLeft="@+id/editText2"
android:layout_below="@+id/editText2"
android:layout_marginTop="10dp"
android:text="Tanggal Lahir" />
<EditText
android:id="@+id/editText3"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_alignLeft="@+id/textView3"
android:layout_below="@+id/textView3"
android:inputType="date"/>
<TextView
android:id="@+id/textView4"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignLeft="@+id/editText3"
android:layout_below="@+id/editText3"
android:layout_marginTop="10dp"
android:text="Jenis Kelamin" />
<EditText
android:id="@+id/editText4"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_alignLeft="@+id/textView4"
android:layout_below="@+id/textView4"
android:inputType="text"
android:maxLength="1"
android:hint="L atau P"/>
<TextView
android:id="@+id/textView5"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignLeft="@+id/editText4"
android:layout_below="@+id/editText4"
android:layout_marginTop="10dp"
android:text="Alamat"
android:inputType="text"
android:maxLength="100"/>
<EditText
android:id="@+id/editText5"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_alignLeft="@+id/textView5"
android:layout_below="@+id/textView5" />
<Button
android:id="@+id/button1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignLeft="@+id/editText5"
android:layout_alignParentBottom="true"
style="?android:attr/borderlessButtonStyle"
android:drawableLeft="@drawable/ic_done"
android:text="Update" />
<Button
android:id="@+id/button2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Kembali"
style="?android:attr/borderlessButtonStyle"
android:drawableLeft="@drawable/ic_arrow"
android:layout_alignParentBottom="true"
android:layout_alignRight="@+id/editText5"
android:layout_alignEnd="@+id/editText5"
/>
</RelativeLayout>
19. Jalankan Aplikasi