Rabu, 10 Juni 2015

CARA MEMBUAT DATABASE,TABLE,DAN MENYIMPAN DATA KE DALAM DATABASE.

Edit Posted by with No comments
Buatlah project baru yang bernama SQLiteDatabase.dengan nama package percobaan1 yang berisi dua buah class yang bernama Database1 dan DBAdapter.java

Berikut sourcecode main.xml

<RelativeLayout xmlns: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=".DBAdapter" >

    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="@string/hello_world" />

</RelativeLayout>



Sourcecode Database1.java
 package com.percobaan1.database1;

import android.app.Activity;
import android.os.Bundle;

public class Database1 extends Activity {
    /** Called when the activity is first created. */
 @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);

        DBAdapter db = new DBAdapter(this);

        //---add 3 titles---
        db.open();      
        long id;
        id = db.insertTitle(
          "1234512345",
          "Android Programmer's Reference",
                "Washington Press");      
        id = db.insertTitle(
          "5432112345",
          "Linux Programming",
          "Bandung Press");
        id = db.insertTitle(
          "0987654321",
          "Android Devlopment Life Cycle",
          "Hongkong Press");
        db.close();
    }

}








Source code DBAdapter .java

 package com.percobaan1.database1;

import android.content.ContentValues;
import android.content.Context;
import android.database.Cursor;
import android.database.SQLException;
import android.database.sqlite.SQLiteDatabase;
import android.database.sqlite.SQLiteOpenHelper;
import android.util.Log;

public class DBAdapter
{
    public static final String KEY_ROWID = "_id";
    public static final String KEY_ISBN = "isbn";
    public static final String KEY_TITLE = "title";
    public static final String KEY_PUBLISHER = "publisher";  
    private static final String TAG = "DBAdapter";
  
    private static final String DATABASE_NAME = "books";
    private static final String DATABASE_TABLE = "titles";
    private static final int DATABASE_VERSION = 1;

    private static final String DATABASE_CREATE =
        "create table titles (_id integer primary key autoincrement, "
        + "isbn text not null, title text not null, "
        + "publisher text not null);";
      
    private final Context context;
  
    private DatabaseHelper DBHelper;
    private SQLiteDatabase db;

    public DBAdapter(Context ctx)
    {
        this.context = ctx;
        DBHelper = new DatabaseHelper(context);
    }
      
    private static class DatabaseHelper extends SQLiteOpenHelper
    {
        DatabaseHelper(Context context)
        {
            super(context, DATABASE_NAME, null, DATABASE_VERSION);
        }

        @Override
        public void onCreate(SQLiteDatabase db)
        {
            db.execSQL(DATABASE_CREATE);
        }

        @Override
        public void onUpgrade(SQLiteDatabase db, int oldVersion,
        int newVersion)
        {
          
            Log.w(TAG, "Upgrading database from version " + oldVersion
                    + " to "
                    + newVersion + ", which will destroy all old data");
            db.execSQL("DROP TABLE IF EXISTS titles");
            onCreate(db);
        }
    }  
  
    //---opens the database---
    public DBAdapter open() throws SQLException
    {
        db = DBHelper.getWritableDatabase();
        return this;
    }

    //---closes the database---  
    public void close()
    {
        DBHelper.close();
    }
  
    //---insert a title into the database---
    public long insertTitle(String isbn, String title, String publisher)
    {
        ContentValues initialValues = new ContentValues();
        initialValues.put(KEY_ISBN, isbn);
        initialValues.put(KEY_TITLE, title);
        initialValues.put(KEY_PUBLISHER, publisher);
        return db.insert(DATABASE_TABLE, null, initialValues);
    }

    //---deletes a particular title---
    public boolean deleteTitle(long rowId)
    {
        return db.delete(DATABASE_TABLE, KEY_ROWID +
          "=" + rowId, null) > 0;
    }

    //---retrieves all the titles---
    public Cursor getAllTitles()
    {
        return db.query(DATABASE_TABLE, new String[] {
          KEY_ROWID,
          KEY_ISBN,
          KEY_TITLE,
          KEY_PUBLISHER},
          null,
          null,
          null,
          null,
          null);
}

//---retrieves a particular title---
public Cursor getTitle(long rowId) throws SQLException
{
  Cursor mCursor =
          db.query(true, DATABASE_TABLE, new String[] {
            KEY_ROWID,
            KEY_ISBN,
            KEY_TITLE,
            KEY_PUBLISHER
            },
            KEY_ROWID + "=" + rowId,
            null,
            null,
            null,
            null,
            null);
  if (mCursor != null) {
      mCursor.moveToFirst();
  }
  return mCursor;
}

//---updates a title---
public boolean updateTitle(long rowId, String isbn,
String title, String publisher)
{
  ContentValues args = new ContentValues();
  args.put(KEY_ISBN, isbn);
  args.put(KEY_TITLE, title);
  args.put(KEY_PUBLISHER, publisher);
  return db.update(DATABASE_TABLE, args,
                   KEY_ROWID + "=" + rowId, null) > 0;
}
}

Terima kasih..
Semoga Bermanfaat....

0 komentar:

Posting Komentar