0% found this document useful (0 votes)
5 views

contoh program SQLite

The document provides a detailed guide on creating a CRUD (Create, Read, Update, Delete) application using SQLite in Android. It includes code snippets for database management, user interface design, and handling user interactions. The example demonstrates how to insert, retrieve, update, and delete student data from a SQLite database within an Android application.

Uploaded by

fadhilmsafa
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
5 views

contoh program SQLite

The document provides a detailed guide on creating a CRUD (Create, Read, Update, Delete) application using SQLite in Android. It includes code snippets for database management, user interface design, and handling user interactions. The example demonstrates how to insert, retrieve, update, and delete student data from a SQLite database within an Android application.

Uploaded by

fadhilmsafa
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 14

SQLite-Pertama (Toast-Alert)

Databases.java
package com.examle.aa_sqlite;

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

public class DBMH {


public static class Mahasiswa{
public String nm;
public String tlp;
}
private SQLiteDatabase db;
private final Context con;
private final OH dbHelper;

public DBMH (Context c){


con=c;
dbHelper=new OH(con,"",null,0);
}
public void open(){
db=dbHelper.getWritableDatabase();
}
public void close(){
db.close();
}
public long insertMahasiswa(String nama, String noTelp){
ContentValues newValues=new ContentValues();
newValues.put("NAMA", nama);
newValues.put("TLP", noTelp);
return db.insert("MH", null, newValues);
}
public Mahasiswa getMahasiswa(String nama){
Cursor cur=null;
Mahasiswa m=new Mahasiswa();
//kolom yang diambil
String[] cols=new String[]{"ID","NAMA","TLP"};
String[] param={nama};
cur=db.query("MH", cols , "NAMA=?", param,null, null,
null);
if(cur.getCount()>0){//ada data ambil
cur.moveToFirst();
m.nm=cur.getString(1);
m.tlp=cur.getString(2);
}
return m;
}
}

OpenHelper.java
package com.examle.aa_sqlite;

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

public class OH extends SQLiteOpenHelper {


public static final int DATABASE_VERSION = 1;
public static final String DATABASE_NAME = "DBMH";
public static final String TABLE_CREATE = "CREATE TABLE MH (ID
INTEGER PRIMARY KEY AUTOINCREMENT," +
"NAMA TEXT, TLP TEXT);";

public OH(Context context, String name, CursorFactory factory,


int version) {
super(context, DATABASE_NAME, factory, DATABASE_VERSION);
// TODO Auto-generated constructor stub
}

@Override
public void onCreate(SQLiteDatabase db) {
// TODO Auto-generated method stub
db.execSQL(TABLE_CREATE);
}

@Override
public void onUpgrade(SQLiteDatabase db, int oldVersion, int
newVersion) {
// TODO Auto-generated method stub
db.execSQL("DROP TABLE IF EXIST MH");
onCreate(db);
}
public static String getTableCreate() {
return TABLE_CREATE;
}

}
Main_activity.java
package com.examle.aa_sqlite;

import com.examle.aa_sqlite.DBMH.Mahasiswa;

import android.app.Activity;
import android.app.AlertDialog;
import android.os.Bundle;
import android.view.Menu;
import android.view.MenuItem;
import android.widget.Toast;

public class MainActivity extends Activity {

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);

DBMH db=new DBMH(this);


db.open();
db.insertMahasiswa("4LFI 5YAHRI", "08583881818");
Mahasiswa m = db.getMahasiswa("4LFI 5YAHRI");
AlertDialog a = new AlertDialog.Builder(this).create();
a.setMessage("Nama Anda \t: "+m.nm+"\nTelepon Anda \t:
"+m.tlp);
a.show();

Toast.makeText(getBaseContext(),"Nama Anda \t: " +m.nm,


Toast.LENGTH_LONG).show();
Toast.makeText(getBaseContext(),"Telepon Anda \t: " +m.tlp,
Toast.LENGTH_LONG).show();
}

@Override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if
it is present.
getMenuInflater().inflate(R.menu.main, menu);
return true;
}

@Override
public boolean onOptionsItemSelected(MenuItem item) {
// Handle action bar item clicks here. The action bar will
// automatically handle clicks on the Home/Up button, so
long
// as you specify a parent activity in AndroidManifest.xml.
int id = item.getItemId();
if (id == R.id.action_settings) {
return true;
}
return super.onOptionsItemSelected(item);
}
}

Contoh Program CRUD


Cara Membuat CRUD SQLite (Creat,Read,Update,Delete) Pada Android
Pada kesempatan kali ini kita akan membuat Crud_SQLite menggunakan Database.

1. Buatlah project dengan nama CRUD_SQLITE


2. Kemudian akan ada dua file yang akan kita modifikasi nantinya

3. Double klik file xml


4. Kemudian kita akan mendesain tampilan project seperti gambar dibawah ini

5. Nanti hasil coding yang ada pada activity_main.xml akan seperti dibawah ini :
import java.util.ArrayList;import java.util.HashMap;
import android.app.Activity;
import android.app.AlertDialog;
import android.content.DialogInterface;
import android.graphics.Color;
import android.os.Bundle;
import android.support.v4.view.ViewPager.LayoutParams;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.EditText;
import android.widget.LinearLayout;
import android.widget.TableLayout;
import android.widget.TableRow;
import android.widget.TextView;public class MainActivity extends Activity implements
OnClickListener {
SQLiteHelper sqLiteHelper = new SQLiteHelper(this);
TableLayout tabelBiodata;
Button buttonTambahBiodata;
ArrayList<Button> buttonEdit = new ArrayList<Button>();
ArrayList<Button> buttonDelete = new ArrayList<Button>();

1. Kemudian ubah atau modifikasi MainActivity.java menjadi seperti berikut


package com.crud_sqlite;import java.util.ArrayList;import java.util.HashMap;
import android.app.Activity;
import android.app.AlertDialog;
import android.content.DialogInterface;
import android.graphics.Color;
import android.os.Bundle;
import android.support.v4.view.ViewPager.LayoutParams;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.EditText;
import android.widget.LinearLayout;
import android.widget.TableLayout;
import android.widget.TableRow;
import android.widget.TextView;public class MainActivity extends Activity implements
OnClickListener {
SQLiteHelper sqLiteHelper = new SQLiteHelper(this);
TableLayout tabelBiodata;
Button buttonTambahBiodata;
ArrayList<Button> buttonEdit = new ArrayList<Button>();
ArrayList<Button> buttonDelete = new ArrayList<Button>();

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);

tabelBiodata = (TableLayout) findViewById(R.id.tableBiodata);


buttonTambahBiodata = (Button) findViewById(R.id.buttonTambahBiodata);
buttonTambahBiodata.setOnClickListener(this);

TableRow barisTabel = new TableRow(this);


barisTabel.setBackgroundColor(Color.YELLOW);

TextView viewHeaderId = new TextView(this);


TextView viewHeaderNama = new TextView(this);
TextView viewHeaderAlamat = new TextView(this);
TextView viewHeaderAction = new TextView(this);

viewHeaderId.setText(“ID”);
viewHeaderNama.setText(“Nama”);
viewHeaderAlamat.setText(“Alamat”);
viewHeaderAction.setText(“Action”);

viewHeaderId.setPadding(5, 1, 5, 1);
viewHeaderNama.setPadding(5, 1, 5, 1);
viewHeaderAlamat.setPadding(5, 1, 5, 1);
viewHeaderAction.setPadding(5, 1, 5, 1);

barisTabel.addView(viewHeaderId);
barisTabel.addView(viewHeaderNama);
barisTabel.addView(viewHeaderAlamat);
barisTabel.addView(viewHeaderAction);

tabelBiodata.addView(barisTabel, new
TableLayout.LayoutParams(LayoutParams.WRAP_CONTENT,LayoutParams.WRAP_C
ONTENT));

ArrayList<HashMap<String, String>> arrayListBiodata =


sqLiteHelper.tampil_semua_biodata();

if (arrayListBiodata.size() > 0) {
for (int i = 0; i < arrayListBiodata.size(); i++) {
// ambil masing-masing hasmap dari arrayListBiodata
HashMap<String, String> hashMapRecordBiodata = arrayListBiodata.get(i);

// JSONObject jsonChildNode = arrayBiodata.getJSONObject(i);


String name = hashMapRecordBiodata.get(“nama”);
String alamat = hashMapRecordBiodata.get(“alamat”);
String id = hashMapRecordBiodata.get(“id_biodata”);

System.out.println(“Nama :” + name);
System.out.println(“Alamat :” + alamat);
System.out.println(“ID :” + id);

barisTabel = new TableRow(this);

if (i % 2 == 0) {
barisTabel.setBackgroundColor(Color.LTGRAY);
}

TextView viewId = new TextView(this);


viewId.setText(id);
viewId.setPadding(5, 1, 5, 1);
barisTabel.addView(viewId);

TextView viewNama = new TextView(this);


viewNama.setText(name);
viewNama.setPadding(5, 1, 5, 1);
barisTabel.addView(viewNama);

TextView viewAlamat = new TextView(this);


viewAlamat.setText(alamat);
viewAlamat.setPadding(5, 1, 5, 1);
barisTabel.addView(viewAlamat);

buttonEdit.add(i, new Button(this));


buttonEdit.get(i).setId(Integer.parseInt(id));
buttonEdit.get(i).setTag(“Edit”);
buttonEdit.get(i).setText(“Edit”);
buttonEdit.get(i).setOnClickListener(this);
barisTabel.addView(buttonEdit.get(i));

buttonDelete.add(i, new Button(this));


buttonDelete.get(i).setId(Integer.parseInt(id));
buttonDelete.get(i).setTag(“Delete”);
buttonDelete.get(i).setText(“Delete”);
buttonDelete.get(i).setOnClickListener(this);
barisTabel.addView(buttonDelete.get(i));
tabelBiodata.addView(barisTabel, new
TableLayout.LayoutParams(LayoutParams.MATCH_PARENT,LayoutParams.MATCH_P
ARENT));}
}

@Override
public void onClick(View view) {
if (view.getId() == R.id.buttonTambahBiodata) {
// Toast.makeText(MainActivity.this, “Button Tambah Data”,
// Toast.LENGTH_SHORT).show();

tambahBiodata();

} else {

/*Melakukan pengecekan pada data array, agar sesuai dengan index masing-masing
button*/

for (int i = 0; i < buttonEdit.size(); i++) {


/* jika yang diklik adalah button edit */
if (view.getId() == buttonEdit.get(i).getId()&&
view.getTag().toString().trim().equals(“Edit”)) {
//Toast.makeText(MainActivity.this, “Edit : ” + // buttonEdit.get(i).getId(),
Toast.LENGTH_SHORT).show();
int id = buttonEdit.get(i).getId();
getDataByID(id);

} /* jika yang diklik adalah button delete */


else if (view.getId() == buttonDelete.get(i).getId()&&
view.getTag().toString().trim().equals(“Delete”)) {
// Toast.makeText(MainActivity.this, “Delete : ” + // buttonDelete.get(i).getId(),
Toast.LENGTH_SHORT).show();
int id = buttonDelete.get(i).getId();
deleteBiodata(id);

}
}
}
}

public void deleteBiodata(int id) {

sqLiteHelper.hapus_biodata(id);

/* restart acrtivity */
finish();
startActivity(getIntent());
}

public void getDataByID(int id) {

String namaEdit = null, alamatEdit = null;

HashMap<String, String> hashMapBiodata = sqLiteHelper


.tampil_biodata_berdasarkan_id(id);

for (int i = 0; i < hashMapBiodata.size(); i++) {


namaEdit = hashMapBiodata.get(“nama”);
alamatEdit = hashMapBiodata.get(“alamat”);
}

LinearLayout layoutInput = new LinearLayout(this);


layoutInput.setOrientation(LinearLayout.VERTICAL);

// buat id tersembunyi di alertbuilder


final TextView viewId = new TextView(this);
viewId.setText(String.valueOf(id));
viewId.setTextColor(Color.TRANSPARENT);
layoutInput.addView(viewId);

final EditText editNama = new EditText(this);


editNama.setText(namaEdit);
layoutInput.addView(editNama);

final EditText editAlamat = new EditText(this);


editAlamat.setText(alamatEdit);
layoutInput.addView(editAlamat);

AlertDialog.Builder builderEditBiodata = new AlertDialog.Builder(this);


builderEditBiodata.setTitle(“Update Biodata”);
builderEditBiodata.setView(layoutInput);
builderEditBiodata.setPositiveButton(“Update”,
new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
String nama = editNama.getText().toString();
String alamat = editAlamat.getText().toString();

System.out.println(“Nama : ” + nama + ” Alamat : ” + alamat);

sqLiteHelper.update_biodata(Integer.parseInt(viewId
.getText().toString()),
editNama.getText()
.toString(),
editAlamat.getText().toString());
/* restart acrtivity */
finish();
startActivity(getIntent());
}

});

builderEditBiodata.setNegativeButton(“Cancel”,
new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
dialog.cancel();
}
});

builderEditBiodata.show();

public void tambahBiodata() {


/* layout akan ditampilkan pada AlertDialog */
LinearLayout layoutInput = new LinearLayout(this);
layoutInput.setOrientation(LinearLayout.VERTICAL);

final EditText editNama = new EditText(this);


editNama.setHint(“Nama”);
layoutInput.addView(editNama);

final EditText editAlamat = new EditText(this);


editAlamat.setHint(“Alamat”);
layoutInput.addView(editAlamat);

AlertDialog.Builder builderInsertBiodata = new AlertDialog.Builder(this);


builderInsertBiodata.setTitle(“Insert Biodata”);
builderInsertBiodata.setView(layoutInput);
builderInsertBiodata.setPositiveButton(“Insert”,
new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
String nama = editNama.getText().toString();
String alamat = editAlamat.getText().toString();

System.out.println(“Nama : ” + nama + ” Alamat: ” + alamat);

sqLiteHelper.tambah_biodata(nama, alamat);
/* restart acrtivity */
finish();
startActivity(getIntent());

});
builderInsertBiodata.setNegativeButton(“Cancel”,
new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
dialog.cancel();
}
});
builderInsertBiodata.show();
}
}

2. Buat class baru dengan nama SQLiteHelper.java

3. Kemudian modifikasi Coding SQLiteHelper.java menjadi seperti berikut :


package com.crud_sqlite;import java.util.ArrayList;import java.util.HashMap;
import android.content.ContentValues;
import android.content.Context;
import android.database.Cursor;
import android.database.sqlite.SQLiteDatabase;
import android.database.sqlite.SQLiteOpenHelper;public class SQLiteHelper extends
SQLiteOpenHelper {

private static final String nama_database = “database_pemain.db”;


private static final int versi_database = 1;
private static final String query_buat_tabel_biodata_pemain = “CREATE TABLE IF NOT
EXISTS tabel_biodata(id_biodata INTEGER PRIMARY KEY AUTOINCREMENT, nama
TEXT,alamat TEXT)”;
private static final String query_hapus_tabel_biodata_pemain = “DROP TABLE IF
EXISTS query_buat_tabel_biodata_pemain”;
public SQLiteHelper(Context context) {
super(context, nama_database, null, versi_database);
} @Override
public void onCreate(SQLiteDatabase sqLiteDatabase) {

sqLiteDatabase.execSQL(query_buat_tabel_biodata_pemain);
System.out.println(“tabel_biodata sudah dibuat”);
} @Override
public void onUpgrade(SQLiteDatabase database, int versi_lama,int versi_baru) {

database.execSQL(query_hapus_tabel_biodata_pemain);
onCreate(database);
}

public void tambah_biodata(String nama, String alamat) {

SQLiteDatabase database = this.getWritableDatabase();


ContentValues values = new ContentValues();
values.put(“nama”, nama);
values.put(“alamat”, alamat);
database.insert(“tabel_biodata”, null, values);
database.close();
}

public ArrayList<HashMap<String, String>> tampil_semua_biodata() {


// deklarasikan sebuah arraylist yang bisa menampung hashmap
ArrayList<HashMap<String, String>> arrayListBiodata = new
ArrayList<HashMap<String,String>>();
SQLiteDatabase database = this.getWritableDatabase();
Cursor cursor = database.rawQuery(“SELECT * FROM tabel_biodata”, null);

// kursor langsung diarkan ke posisi paling awal data pada tabel_biodata


if (cursor.moveToFirst()) {
do {
// deklarasikan sebuah hashmap, yang bisa menamp
HashMap<String, String> hashMapBiodata = new HashMap<String, String>();

// masukkan masing-masing field dari tabel_biodata ke dalam hashMapBiodata


//pastikan id_biodata, nama dan alamat sama persis dengan field yang ada pada
tabel_biodata
hashMapBiodata.put(“id_biodata”, cursor.getString(0));
hashMapBiodata.put(“nama”, cursor.getString(1));
hashMapBiodata.put(“alamat”, cursor.getString(2));

// masukkan hashMapBiodata ke dalam arrayListBiodata


arrayListBiodata.add(hashMapBiodata);

} while (cursor.moveToNext());
}

return arrayListBiodata;

public int update_biodata(int id, String nama, String alamat) {


SQLiteDatabase database = this.getWritableDatabase();
ContentValues recordBiodata = new ContentValues();
recordBiodata.put(“nama”, nama);
recordBiodata.put(“alamat”, alamat);
return database.update(“tabel_biodata”, recordBiodata, “id_biodata=” + id, null);
}

public void hapus_biodata(int id) {


SQLiteDatabase database = this.getWritableDatabase();
database.execSQL(“DELETE FROM tabel_biodata WHERE id_biodata='” + id+ “‘”);
database.close();
}

public HashMap<String, String> tampil_biodata_berdasarkan_id(int id) {


SQLiteDatabase database = this.getReadableDatabase();
HashMap<String, String> hashMapBiodata = new HashMap<String, String>();
Cursor cursor = database.rawQuery(“SELECT * FROM tabel_biodata WHERE
id_biodata=”+ id + “”, null);

if (cursor.moveToFirst()) {
do {
hashMapBiodata.put(“id_biodata”, cursor.getString(0));
hashMapBiodata.put(“nama”, cursor.getString(1));
hashMapBiodata.put(“alamat”, cursor.getString(2));
} while (cursor.moveToNext());
}

return hashMapBiodata;
}
}
4. Jalankan/Running project yang telah kita buat tampilannya seperti berikut :
5. Hasil running ketika diinputkan data

You might also like