Tuesday, November 1, 2016

Membuat Database SQLite di Android + Contoh Aplikasi

Cara Menyimpan Data di Android dengan Database SQLite - Tutorial membuat aplikasi di android yang dapat menyimpan data ke database SQLite, pada tutorial kali ini akan membahas bagaimana cara membuat database SQLite di android dengan mudah, yang dilengkapi dengan script serta file program androidnya, untuk memulai membuat aplikasi database SQLite silahkan membuat project baru, kemudian ikuti script android dibawah ini:

Tutorial : Aplikasi Simpan ke Database dengan SQLite
----------------------------------------------------------------------------
File : String.xml (Values)
----------------------------------------------------------------------------
<?xml version="1.0" encoding="utf-8"?>
<resources>
    <string name="app_name">Aplikasi SQLite</string>
    <string name="action_settings">Settings</string>
    <string name="judul">.: Input Nama dan Hobi :.</string>
    <string name="btnAddtxt">Add</string>
    <string name="namaLabel">Nama</string>
    <string name="hobiLabel">Hobi</string>
    <string name="nomorLabel">No.</string>
</resources>

----------------------------------------------------------------------------
File : Main.xml (Layout)
----------------------------------------------------------------------------
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:id="@+id/LinearLayout2"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical"
    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=".BasisData01" >
    <TextView
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:text="@string/judul" />
    <LinearLayout
        android:id="@+id/Linearlayout1"
        android:layout_width="match_parent"
        android:layout_height="wrap_content" >
        <EditText
            android:id="@+id/inNama"
            android:layout_width="100dip"
            android:layout_height="wrap_content" >
        </EditText>
        <EditText
            android:id="@+id/inHobi"
            android:layout_width="100dip"
            android:layout_height="wrap_content" >
        </EditText>
        <Button
            android:id="@+id/btnAdd"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="@string/btnAddtxt" >
        </Button>
    </LinearLayout>
    <TableLayout
        android:id="@+id/tabel_data"
        android:layout_width="match_parent"
        android:layout_height="wrap_content" >
        <TableRow
            android:id="@+id/tableRow1"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content" >
            <TextView
                android:id="@+id/no_id"
                android:layout_width="50dip"
                android:layout_height="wrap_content"
                android:text="@string/nomorLabel" >
            </TextView>
            <TextView
                android:id="@+id/nama_id"
                android:layout_width="100dip"
                android:layout_height="wrap_content"
                android:text="@string/namaLabel" >
            </TextView>
            <TextView
                android:id="@+id/hobi_id"
                android:layout_width="100dip"
                android:layout_height="wrap_content"
                android:text="@string/hobiLabel" >
            </TextView>
        </TableRow>
    </TableLayout>
</LinearLayout>

----------------------------------------------------------------------------
File : DatabaseManager.java (SRC)
----------------------------------------------------------------------------
package com.basisdata.aplikasibasisdata01;
import java.util.ArrayList;
import android.content.ContentValues;
import android.content.Context;
import android.database.Cursor;
import android.database.sqlite.SQLiteDatabase;
import android.database.sqlite.SQLiteOpenHelper;
import android.util.Log;
public class DatabaseManager {
    private static final String ROW_ID = "_id";
    private static final String ROW_NAMA = "nama";
    private static final String ROW_HOBI = "hobi";
    private static final String NAMA_DB = "mugi";
    private static final String NAMA_TABEL = "hobi";
    private static final int DB_VERSION = 1;
    private static final String CREATE_TABLE = "create table "+NAMA_TABEL+" ("+ROW_ID+" integer PRIMARY KEY autoincrement,"+ROW_NAMA+" text,"+ROW_HOBI+" text)";
    private final Context context;
    private DatabaseOpenHelper dbHelper;
    private SQLiteDatabase db;
    public DatabaseManager(Context ctx) {
        this.context = ctx;
        dbHelper = new DatabaseOpenHelper(context);
        db = dbHelper.getWritableDatabase();
    }
    private static class DatabaseOpenHelper extends SQLiteOpenHelper {
        public DatabaseOpenHelper(Context context) {
            super(context, NAMA_DB, null, DB_VERSION);
            // TODO Auto-generated constructor stub
        }
        @Override
        public void onCreate(SQLiteDatabase db) {
        // TODO Auto-generated method stub
            db.execSQL(CREATE_TABLE);
        }
        @Override
        public void onUpgrade(SQLiteDatabase db, int oldVer, int newVer) {
        // TODO Auto-generated method stub
            db.execSQL("DROP TABLE IF EXISTS "+NAMA_DB);
            onCreate(db);
        }
    }
    public void close() {
        dbHelper.close();
    }
    public void addRow(String nama, String hobi) {
        ContentValues values = new ContentValues();
        values.put(ROW_NAMA, nama);
        values.put(ROW_HOBI, hobi);
        try {
            db.insert(NAMA_TABEL, null, values);
        } catch (Exception e) {
            Log.e("Database Error ", e.toString());
            e.printStackTrace();
        }
    }
    public ArrayList<ArrayList<Object>> ambilSemuaBaris() {
        ArrayList<ArrayList<Object>> dataArray = new
        ArrayList<ArrayList<Object>>();
        Cursor cur;
        try {
            cur = db.query(NAMA_TABEL,
                new String[] { ROW_ID, ROW_NAMA, ROW_HOBI }, null, null,
                null, null, null);
            cur.moveToFirst();
            if (!cur.isAfterLast()) {
                do {
                    ArrayList<Object> dataList = new ArrayList<Object>();
                    dataList.add(cur.getLong(0));
                    dataList.add(cur.getString(1));
                    dataList.add(cur.getString(2));
                    dataArray.add(dataList);
                } while (cur.moveToNext());
            }
        } catch (Exception e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
            Log.e("Database Error", e.toString());
        }
        return dataArray;
    }
}

----------------------------------------------------------------------------
File : BasisData01.java (SRC)
----------------------------------------------------------------------------
package com.basisdata.aplikasibasisdata01;
import java.util.ArrayList;
import android.os.Bundle;
import android.app.Activity;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import android.widget.TableLayout;
import android.widget.TableRow;
import android.widget.TextView;
import android.widget.Toast;
import android.view.Menu;
public class BasisData01 extends Activity {
    DatabaseManager dm;
    EditText nama, hobi;
    Button addBtn;
    TableLayout tabel4data;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
        dm = new DatabaseManager(this);
        tabel4data = (TableLayout) findViewById(R.id.tabel_data);
        nama = (EditText) findViewById(R.id.inNama);
        hobi = (EditText) findViewById(R.id.inHobi);
        addBtn = (Button) findViewById(R.id.btnAdd);
        addBtn.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                simpKamuta();
            }
        });
        updateTable();
    }
    protected void simpKamuta() {
        try {
            dm.addRow(nama.getText().toString(),hobi.getText().toString());
            Toast.makeText(getBaseContext(),nama.getText().toString() + ", berhasil disimpan",Toast.LENGTH_SHORT).show();
            updateTable();
            kosongkanField();
        } catch (Exception e) {
            e.printStackTrace();
            Toast.makeText(getBaseContext(), "gagal simpan, " + e.toString(),Toast.LENGTH_LONG).show();
        }
    }
    protected void kosongkanField(){
        nama.setText("");
        hobi.setText("");
    }
    protected void updateTable() {
// TODO Auto-generated method stub
        while (tabel4data.getChildCount() > 1) {
            tabel4data.removeViewAt(1);
        }
        ArrayList<ArrayList<Object>> data = dm.ambilSemuaBaris();
        for (int posisi = 0; posisi < data.size(); posisi++) {
            TableRow tabelBaris = new TableRow(this);
            ArrayList<Object> baris = data.get(posisi);
            TextView idTxt = new TextView(this);
            idTxt.setText(baris.get(0).toString());
            tabelBaris.addView(idTxt);
            TextView namaTxt = new TextView(this);
            namaTxt.setText(baris.get(1).toString());
            tabelBaris.addView(namaTxt);
            TextView hobiTxt = new TextView(this);
            hobiTxt.setText(baris.get(2).toString());
            tabelBaris.addView(hobiTxt);
            tabel4data.addView(tabelBaris);
        }
    }
    @Override
    public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present.
        getMenuInflater().inflate(R.menu.basis_data01, menu);
        return true;
    }
}

Itulah tadi bagaimana membuat database SQLite di Android dengan contoh aplikasi, Berikut hasil dari aplikasi di android yang disimpan di database SQLite, selamat mencoba semoga bermanfaat.


Membuat Database SQLite di Android + Contoh Aplikasi
Comments


EmoticonEmoticon