34
ECLIPSE (cont) Anita Nathania P., S.Kom, MMT

12. Activity Ljt + SQL Lite

  • Upload
    amatnos

  • View
    12

  • Download
    2

Embed Size (px)

DESCRIPTION

Presentation

Citation preview

Page 1: 12. Activity Ljt + SQL Lite

ECLIPSE (cont)Anita Nathania P., S.Kom,

MMT

Page 2: 12. Activity Ljt + SQL Lite

Radio Button

• Untuk menjadi 1 grup tambahkan RadioGroup

Page 3: 12. Activity Ljt + SQL Lite

Radio Button

• File java

Page 4: 12. Activity Ljt + SQL Lite

Check Box

• File xml

Page 5: 12. Activity Ljt + SQL Lite

Check Box

• File java

Page 6: 12. Activity Ljt + SQL Lite

Lebih dari 1 Activity

Page 7: 12. Activity Ljt + SQL Lite

Activity

Activity Utama

Activity 2

Page 8: 12. Activity Ljt + SQL Lite

Activity

• File java Activity main

• File java Activity 2

Page 9: 12. Activity Ljt + SQL Lite

Activity

• Selalu ada oncreate

Page 10: 12. Activity Ljt + SQL Lite

Activity

• Daftarkan activity baru ke manifest

Page 11: 12. Activity Ljt + SQL Lite

SQLite

• Embedded RDBMS• Size – about 257 Kbytes• Not a client/server architecture– Accessed via function calls from the application

• Writing (insert, update, delete) locks the database, queries can be done in parallel

Page 12: 12. Activity Ljt + SQL Lite

android.database.sqlite - Classes

• SQLiteCloseable – An object created from a SQLiteDatabase that can be

closed. 

• SQLiteCursor – A Cursor implementation that exposes results from a

query on a SQLiteDatabase. 

• SQLiteDatabase – Exposes methods to manage a SQLite database. 

• SQLiteOpenHelper – A helper class to manage database creation and version

management. 

Page 13: 12. Activity Ljt + SQL Lite

android.database.sqlite - Classes

• SQLiteProgram – A base class for compiled SQLite programs. 

• SQLiteQuery – A SQLite program that represents a query that reads the

resulting rows into a CursorWindow. 

• SQLiteQueryBuilder – a convenience class that helps build SQL queries to be

sent to SQLiteDatabase objects. 

• SQLiteStatement – A pre-compiled statement against a SQLiteDatabase that

can be reused. 

Page 14: 12. Activity Ljt + SQL Lite

Class SQL Lite (1)

• SQLiteDatabase merupakan sebuah kelas yang mempunyai method-method seperti :– Insert() = menambahkan baris ke

database – Update () = memperbarui baris pada

database –Delete () = menghapus baris pada

database – execSQL () = mengeksekusi sintak SQL

Page 15: 12. Activity Ljt + SQL Lite

Class SQL Lite (2)

•  SQLiteOpenHelper subclass dengan beberapa method seperti :– onCreate() = jika sebelum'nya belum ada database

– onUpgrade() = jika sebelumnya sudah di temukan database (beda versi) atau mengubah skema DB

– onOpen() = jika database dalam keadaan open

– getWritableDatabase() = memanggil database u/ mengubah data

– getReadableDatabase() = memanggil database agar u/ membaca data

Page 16: 12. Activity Ljt + SQL Lite

Class SQL Lite (3)

• Cursor merepresentasikan hasil query yang di eksekusi pada baris dan kolom tertentu, Beberapa method :–moveToFirst() = pindah ke baris pertama

– isAfterLast () = mengirim posisi cursor apabila sudah berada di baris terakhir

– getLong() = mengambil data pada kolom yang mempunyai tipe data Long

– getString() = mengambil data pada kolom yang mempunyai tipe data String

Page 17: 12. Activity Ljt + SQL Lite

Storage Class

• NULL – null value

• INTEGER – signed integer, stored in 1, 2, 3, 4, 6, or 8 bytes depending on the

magnitude of the value

• REAL – a floating point value, 8-byte IEEE floating point number.

• TEXT – text string, stored using the database encoding (UTF-8, UTF-16BE or

UTF-16LE).

• BLOB – The value is a blob of data, stored exactly as it was input.

Page 18: 12. Activity Ljt + SQL Lite

Penjelasan Contoh Program

• Buat Class DatabaseHelper– Untuk membantu semua proses yang

terjadi di DB termasuk create DB, tabel, insert, update, delete

• Buat Tampilan UI– Buatlah pada main.xml

• Buat Class Activity Main nya

Page 19: 12. Activity Ljt + SQL Lite

Class DatabaseHelper

• Klik kanan New Class

Page 20: 12. Activity Ljt + SQL Lite

Class DatabaseHelper

• Karena database ini digunakan untuk memanage database maka dia extends Class SQLiteOpenHelper

• Inisialisasi variabel untuk nama database dan field di dalam tabel

• Create database di dalam SQLLite yang sudah embedded di android

Page 21: 12. Activity Ljt + SQL Lite

• Fungsi untuk membuat tabel dengan nama tcontact

• Fungsi db.insert digunakan untuk menambahkan data ke dalam database

• Parameter akan berubah sesuai kebutuhan• Object ContentValues digunakan untuk menyimpan

temporary data dari input untuk disimpan ke dalam database

Class DatabaseHelper

Page 22: 12. Activity Ljt + SQL Lite

• Fungsi db.update untuk melakukan update data di dalam database

• Hampir sama dengan fungsi insert• Perhatikan comment untuk setiap fungsi….

Class DatabaseHelper

Page 23: 12. Activity Ljt + SQL Lite

• Fungsi untuk melakukan delete data dari database• Pada fungsi diatas data yang di delete berdasarkan field

name

• Fungsi untuk mengembalikan semua dari tabel yang ada.• Fungsi ini sama dengan fungsi “select * from

nama_database”

Class DatabaseHelper

Page 24: 12. Activity Ljt + SQL Lite

• Class ini sama dengan MainActicity pada latihan sebelumnya

• Class ini extends ListActivity karena kita menggunakan ListView untuk menampilkan data yang ada

• Variabel yang ada dibuat seperti biasa di awal

Class ListViewActivity

Page 25: 12. Activity Ljt + SQL Lite

• Void onCreate akan terbuat otomatis pada saat kita new project

• Membuat object dbHelper yang = DatabaseHelper• dbHelper.createEmployeeTable memanggil fungsi yang

sudah kita buat di DatabaseHelper untuk membuat sebuah database

Class ListViewActivity

Page 26: 12. Activity Ljt + SQL Lite

• Setelah database di buat, maka fungsi yang dipanggil adalah getAll();

• Fungsi getAll() adalah fungsi yang berada di dalam Class ListViewActivity untuk mendapatkan semua data dengan cara memanggil lagi fungsi getAllDatas

Class ListViewActivity

Page 27: 12. Activity Ljt + SQL Lite

• Fungsi getAllDatas merupakan fungsi yang memanggil fungsi getAll yang terdapat pada class DatabaseHelper dan bertugas menampilkannya dengan bantuan cursor

Class ListViewActivity

Page 28: 12. Activity Ljt + SQL Lite

• Fungsi cursor.getString untuk mengambil nilai dari field dalam database yang ada di index 1. Index dimulai dari 0– Pada contoh kali ini Index 1 = Field Name– Index 2 = Field Telp

• Names merupakan sebuah list yang digunakan untuk menampilkan data kali ini

• Untuk ke data berikutnya maka digunakan fungsi moveToNext() dari Class cursor

Class ListViewActivity

Page 29: 12. Activity Ljt + SQL Lite

• Fungsi buttonEvenListener dipanggil pada saat onCreate aplikasi juga.

• Fungsi ini fungsinya sama dengan latihan kita sebelumnya untuk mengetahui jika button yang ada di klik.

• Button yang ingin diketahui kapan di klik adalah btnSave

Class ListViewActivity

Page 30: 12. Activity Ljt + SQL Lite

• Yang terjadi apabila button save di klik adalah menyimpan isian dari edittext nama dan no telp dan melakukan insert data ke database dengan fungsi insertData

• Selain insert dilakukan juga menampilkan pemberitahuan ke user bahwa data berhasil disimpan

• Setelah itu, dilakukan reset untuk form yang ada• getAll() untuk mengambil update data setelah terjadi

perubahan pada database

Class ListViewActivity

Page 31: 12. Activity Ljt + SQL Lite

• Fungsi getAll di awal digunakan untuk mengecek apakah database sudah ada isinya

• Database SQL Lite sudah langsung terdapat di dalam android

• Setiap data yang kita masukkan tidak akan terhapus saat program di matikan

Penjelasan Tambahan

Page 32: 12. Activity Ljt + SQL Lite

Informasi

• Dokumen Lengkap mengenai SQLite– http://developer.android.com/

reference/android/database/sqlite/package-summary.html

• Untuk melihat database SQLite di PC– Gunakan Mozilla dan lakukan

penambahan addon : https://addons.mozilla.org/en-US/firefox/addon/sqlite-manager/

Page 33: 12. Activity Ljt + SQL Lite

Open DB SQLite

• Buka Aplikasinya– Tools > SQLite Manager

• Mengunakannya? – Pull database terlebih dahulu

• Di eclipse– Window > Show View > Other > Android >File Explorer– database tersimpan di folder

/data/data/your.app.package/databases/your-db-name

• klik dipojok kanan atas Pull a file from a device lalu Save ke HD.

Page 34: 12. Activity Ljt + SQL Lite

Open DB SQLite• Pada SQLite Manager – Database > Connect Database

• Pilih file yang di tadi sudah kita Pull• Browse data bisa di Browse & Search