Anda di halaman 1dari 18

PEMROGRAMAN MOBILE

PRAKTIKUM 11 ( DATABASE II )

Disusun oleh : CYNTHIA STEFFI CLIFF 12.12.0037 SI 12 A http://cliffnewbie.wordpress.com/

SEKOLAH TINGGI MANAJEMEN INFORMATIKA DAN KOMPUTER AMIKOM PURWOKERTO Jl. Let. Jend. Pol. Sumarto, Purwokerto Utara 2013

BAB I PENDAHULUAN

1. Rumusan Masalah Dalam praktikum satu ini dapat dirumuskan masalah bahwa : a. Bagaimana pembuatan program untuk membuat database pada eclipse? b. Bagaimana hasil pengaplikasian dari praktikum 11 tentang database?

2. Batasan Masalah Adapun batasan masalah pada praktikum database yang dapat kita ketahui, yaitu : a. Tahapan pembuatan aplikasi database sederhana pada eclipse. b. Hasil aplikasi sederhana dari praktikum 11 tentang aplikasi sederhana database.

3. Tujuan Adapun tujuan dari pembuatan aplikasi sederhana dengan eclipse, diantaranya : a. Mengetahui pemrograman mobile dengan aplikasi eclipse. b. Menambah nilai tugas dalam laporan praktikum. c. Dapat membuat dan menjalankan aplikasi yang dibuat dengan baik dan benar.

BAB II LANDASAN TEORI

A. Pengertian SQLite Android SQLite database merupakan bagian integral "built-in" komponen. Setiap database yang Anda buat akan dapat diakses dengan nama untuk setiap kelas dalam aplikasi, tetapi tidak di luar aplikasi. Di sini kita akan melihat bagaimana menggunakan SQLite API untuk melakukan operasi database umum.

SQLite adalah sistem manajemen database relasional (RDBMS). Apa yang membuat SQLite unik adalah bahwa hal itu dianggap sebagai solusi embedded. Kebanyakan sistem manajemen database seperti Oracle, MySQL, dan SQL Server adalah proses server mandiri yang dijalankan secara independen. SQLite sebenarnya adalah sebuah perpustakaan yang terhubung ke dalam aplikasi. Semua operasi database ditangani dalam aplikasi melalui panggilan dan fungsi yang terdapat di perpustakaan SQLite. Ini adalah berita bagus saat Anda sedang belajar menggunakan SQLite karena itu membuat lebih mudah untuk memanipulasi bahkan database besar bila dibandingkan dengan solusi database lebih konvensional. Dalam kasus Anda tertarik, SQLite sebenarnya ditulis dalam C dan terkandung dalam berbasis Java "wrapper" yang disediakan oleh SDK Android. SQLite tidak mengandalkan Structured Query Language (SQL); bahasa yang sama digunakan oleh kebanyakan RDBMSs lainnya.

BAB III PEMBAHASAN

A. Tutorial Membuat Database Android Berikut merupakan tahapan pembuatan aplikasi android sederhana tentang database. 1. Buka eclipse. 2. Buka menu File New Project Android Android Project Next. 3. Pilih pada jendela New Android Project seperti berikut : Application name Project name Package name : databaseSI12A : databaseSI12A : com.example.databaseSI12A

4. Setelah di next pada jendela eclipse, lalu pilih symbol untuk project yang kita buat dan klik next hingga finish. Setelah itu maka akan muncul lembar kerja baru dengan project nama yang sudah kita buat sebelumnya. 5. Klik src package klik kanan new class seperti berikut.

6. Buka MainActivity.java dan isikan kode seperti berikut.


package com.example.databasesi12a; import android.os.Bundle; import android.app.Activity; import android.view.Menu; public class MainActivity extends Activity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout. activity_main); }

@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; } }

7.

Tambahkan kode program pada class DBHelper.java seperti berikut.


package com.example.databasesi12a; import import import import android.content.Context; android.database.sqlite.SQLiteDatabase; android.database.sqlite.SQLiteOpenHelper; android.util.Log;

public class DBHelper extends SQLiteOpenHelper{ //nama variabel adalah table name public static final String TABLE_NAME = "data_inventori"; public static final String COLUMN_ID = "_id"; public static final String COLUMN_NAME = "nama_barang"; public static final String COLUMN_MERK = "merk_barang"; public static final String COLUMN_HARGA = "harga_barang"; public static final String db_name = "inventori.db"; private static final int db_version = 1; private static final String db_create = "create table" + TABLE_NAME

+ "(" + COLUMN_ID + "integer primary key autoincrement," + COLUMN_NAME + "varchar (50) not null," + COLUMN_MERK +"varchar (50) not null," + COLUMN_HARGA + "varchar (50) not null);"; public DBHelper(Context abc){ super(abc, db_name, null, db_version); }

@Override public void onCreate(SQLiteDatabase db) { // TODO Auto-generated method stub db.execSQL(db_create); } @Override public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) { // TODO Auto-generated method stub Log.w(DBHelper.class.getName(), "Upgrading database from"+ oldVersion + "to" + newVersion + ",which will destroy all old data"); db.execSQL("Drop Table If Exist" + TABLE_NAME); onCreate(db); } }

8.

Tambahkan kode program pada class CreateData.java seperti berikut.


package com.example.databasesi12a; import import import import import import import android.app.Activity; android.os.Bundle; android.view.View; android.view.View.OnClickListener; android.widget.Button; android.widget.EditText; android.widget.Toast;

public class CreateData extends Activity implements OnClickListener{ private Button submit; private EditText nama, merk, harga; private DBDataSource datasource; @Override protected void onCreate(Bundle savedInstanceState) { // TODO Auto-generated method stub super.onCreate(savedInstanceState); setContentView(R.layout.createdata);

submit = (Button) findViewById(R.id.btnSubmit); submit.setOnClickListener(this); nama = (EditText) findViewById(R.id.txtNamaBarang); merk = (EditText) findViewById(R.id.txtMerk); harga = (EditText) findViewById(R.id.txtHarga); datasource = new DBDataSource(this); datasource.open(); } @Override public void onClick(View arg0) { // TODO Auto-generated method stub String nma = null; String mrk = null; String hrg = null; Barang barang = null; if(nama.getText()!=null && merk.getText()!=null && harga.getText()!=null){ nma = nama.getText().toString(); mrk = merk.getText().toString(); hrg = harga.getText().toString(); } switch (arg0.getId()) { case R.id.btnSubmit: barang = datasource.createBarang(nma,mrk,hrg); Toast.makeText(this, "masuk barang\n" + "nama" + barang.getNama_barang()+ "merk" + barang.getMerk_barang()+ "harga" + barang.getHarga_barang(), Toast.LENGTH_LONG)arg0.show(); break; } }

9. Buat juga kode program pada class DBDataSource.java


package com.example.databasesi12a; import import import import android.content.ContentValues; android.content.Context; android.database.SQLException; android.database.sqlite.SQLiteDatabase;

public class DBDataSource {

private SQLiteDatabase database; private DBHelper dbHelper; private String[] allcolumns={ DBHelper.COLUMN_ID, DBHelper.COLUMN_NAME, DBHelper.COLUMN_MERK, DBHelper.COLUMN_HARGA }; public DBDataSource(Context c){ dbHelper = new DBHelper(c); // } public DBDataSource(CreateData createData) { // TODO Auto-generated constructor stub } public void open() throws SQLException { // TODO Auto-generated method stub database = dbHelper.getWritableDatabase(); } public void close(){ dbHelper.close(); } public Barang createBarang(String nma, String mrk, String hrg) ContentValue values = new ContentValues(); values.put(DBHelper.COLUMN_NAME,nma); values.put(DBHelper.COLUMN_MERK,mrk); values.put(DBHelper.COLUMN_HARGA,hrg); } }

10. Buatlah kode program pada kelas ViewData.java


import java.util.ArrayList; import import import import import import import import import android.app.Dialog; android.app.ListActivity; android.os.Bundle; android.view.View; android.widget.AdapterView; android.widget.ArrayAdapter; android.widget.Button; android.widget.ListView; android.widget.AdapterView.OnItemClickListener;

public class ViewData extends ListActivity implements OnItemClickListener { //inisialisasi kontroller

private DBDataSource dataSource; //inisialisasi arraylist private ArrayList<Barang> values; private Button editBarang, deleteBarang;

//menampilkan data @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout. viewdata); dataSource = new DBDataSource(this); // buka kontroller dataSource.open(); // ambil semua data barang values = dataSource.getAllBarang(); // masukkan data barang ke array adapter ArrayAdapter<Barang> adapter = new ArrayAdapter<Barang>(this, android.R.layout.simple_list_item_1, values); // set adapter pada list setListAdapter(adapter); ListView lv = (ListView) findViewById(R.id. listView1); lv.setOnItemClickListener( this); }

@Override public void onItemClick(AdapterView<?> arg0, View arg1, int arg2, long arg3) { // TODO Auto-generated method stub final Dialog dialog = new Dialog(this); dialog.setContentView(R.layout.dialog_view); dialog.setTitle("Pilih Aksi"); dialog.show(); // final Barang b = (Barang) getListAdapter().getItem(pos); editBarang = (Button) findViewById(R.id. button_edit_data); }

11.

Tambahkan kode program pada kelas Barang.java


public class Barang { private private private private long id; String nama_barang; String merk_barang; String harga_barang;

public long getId() { return id; } public void setId(long id) { this.id = id; } public String getNama_barang() { return nama_barang; } public void setNama_barang(String nama_barang) { this.nama_barang = nama_barang; } public String getMerk_barang() { return merk_barang; } public void setMerk_barang(String merk_barang) { this.merk_barang = merk_barang; } public String getHarga_barang() { return harga_barang; } public void setHarga_barang(String harga_barang) { this.harga_barang = harga_barang; } @Override public String toString() { return "Barang "+ nama_barang +" "+ merk_barang + ""+ harga_barang; } }

12.

Buat file xml baru dengan cara klik folder res layot klik kanan new file xml

13.

Tambahkan kode pula pada createdata.xml


<?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android " android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical" > <EditText android:id="@+id/txtNamaBarang" android:layout_width="match_parent" android:layout_height="wrap_content" android:ems="10" android:hint="Nama Barang" > <requestFocus /> </EditText> <EditText android:id="@+id/txtMerk" android:layout_width="match_parent" android:layout_height="wrap_content" android:ems="10" android:hint="Merk Barang" /> <EditText android:id="@+id/txtHarga" android:layout_width="match_parent" android:layout_height="wrap_content" android:ems="10" android:hint="Harga Barang" />

<Button android:id="@+id/btnSubmit" android:layout_width="wrap_content" android:layout_height="wrap_content" android:hint="Nama Barang" android:text="Submit" /> </LinearLayout>

14.

Tambahkan kode pada viewdata.xml


<?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent" android:background="#000000" android:orientation="vertical" > <TextView android:id="@+id/textView1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_gravity="center_horizontal" android:text="@string/tampil" android:textAppearance="?android:attr/textAppearanceLarge" android:textColor="#00FF00" /> <ListView android:id="@+id/list" android:layout_width="wrap_content" android:layout_height="wrap_content"></ListView> </LinearLayout>

15. Tambahkan kode program pada menu.xml


<RelativeLayoutxmlns:android="http://schemas.android.com/apk/res/ android" xmlns:tools="http://schemas.android.com/tools" 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=".MainActivity" > <Button android:id="@+id/button_view"

android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignParentBottom="true" android:layout_centerHorizontal="true" android:layout_marginBottom="112dp" android:text="Lihat Barang" /> <TextView android:id="@+id/nama_app" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_above="@+id/button_tambah" android:layout_centerHorizontal="true" android:layout_marginBottom="71dp" android:text="Menu" android:textSize="20sp" /> <Button android:id="@+id/button_tambah" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_above="@+id/button_view" android:layout_centerHorizontal="true" android:layout_marginBottom="16dp" android:text="Tambah barang" /> </RelativeLayout>

16. Tambahkan kode program di class file dialog_view.xml


<?xml version="1.0" encoding="utf-8"?> <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent" > <Button android:id="@+id/button_edit_data" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignParentTop="true" android:layout_centerHorizontal="true" android:layout_marginTop="180dp" android:minWidth="80dp" android:text="edit" /> <Button android:id="@+id/button_delete_data" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_below="@+id/button_edit_data" android:layout_centerHorizontal="true" android:minWidth="80dp" android:text="delete" />

</RelativeLayout>

Keterangan : Aplikasi ini merupakan aplikasi android sederhana dengan membuataplikasi database dengan menggunakan datanbase SQLite yang mana aplikasi ini dapat menyimpan, mengedit, menghapus data. Berikut ini merupakan konsep sementara aplikasi database :

HASIL OUTPUT PROJEK

BAB IV KESIMPULAN

Dalam praktikum database ini dapat disimpulkan bahwa Android SQLite database merupakan bagian integral "built-in" komponen. Setiap database yang Anda buat akan dapat diakses dengan nama untuk setiap kelas dalam aplikasi, tetapi tidak di luar aplikasi. Di sini kita akan melihat bagaimana menggunakan SQLite API untuk melakukan operasi database umum.

DAFTAR PUSTAKA

http://www.candra.web.id/2012/11/21/pengantar-sqlite/

Anda mungkin juga menyukai