Senin, 21 April 2014

TRANSAKSI

Transaksi adalah satu atau beberapa aksi yang dilakukan program aplikasi untuk mengakses atau mengubah isi basis data. Transaksi merupakan bagian dari pengeksekusian sebuah program yang melakukan pengaksesan basis data dan bahkan juga melakukan serangkaian perubahan data. DBMS yang kita gunakan harus menjamin bahwa setiap transaksi harus dapat dikerjakan secara utuh atau tidak sama sekali.
Tidak boleh ada transaksi yang hanya dikerjakan sebagian, karena dapat menyebabkan inkonsistensi basis data.
Transaksi bertujuan unuk mencegah dari kehilangan ataupun kerusakan data. Sebuah transaksi berpeluang untuk mengganggu integritas basis data yang dapat membuat kondisi/hubungan antar data tidak seperti seharusnya. Untuk menjamin agar integritas dapat tetap terpelihara maka setiap transaksi harus memiliki sifat-sifat:

1. Atomicity, dimana semua operasi dalam transaksi dapat dikerjakan seluruhnya atau tidak sama sekali.
2. Consistency, dimana eksekusi transaksi harus dapat menjamin data tetap konsisten setelah transaksi berakhir.
3. Isolation, jika pada sebuah sistem basis data terdapat sejumlah transaksi yang dilaksanakan secara bersamaan, maka semua transaksi yang dilaksanakan pada saat yang bersamaan tersebut harus dapat dimulai dan bisa berakhir.
4. Durability, dimana perubahan data yang terjadi setelah sebuah transaksi berakhir dengan baik, harus dapat bertahan bahkan jika seandainya sistem mati.

OPERASI TRANSAKSI PADA ORACLE

Didalam transaksi, terdapat dua buah operasi untuk menjaga integritas dan ketahanan data, diantaranya dengan melakukan operasi commit dan rollback.
1. Commit berfungsi untuk menandakan bahwa transaksi telah selesai dilaksanakan.
2. Rollback berfungsi untuk memberitahukan bahwa transaksi harus diulang karena adanya suatu kegagalan.

Nah, sekarang kita praktek untuk penerapan commit sama rollbacknya.

Pertama, buka dulu SQL Command Line nya :)



Setelah itu, connected lalu masukkan user dan password kamu :


Sekarang, kita coba buat table nya dulu, misalkan nama table nya tabel nyobaan


jangan lupa buat sequence dan isi tabelnya juga yaaaaaaaa :)



Kalo udah, kita coba lihat isi dari tabel nyobaan yang udah kita buat tadi, tampilannya  kurang lebih bakalan seperti ini :


Terus kapan dong commit sama rollbacknya ??? sabar sabar hehe, sekarang biar tahu dimana penerapan commit sama rollbacknya, kita buka 2 jendela SQL command line nya :)


Biar gampang bedainnya, kita ganti salah satu background command line nya, terus di masing-masing command line, kita log in menggunakan user yang sama. setelah berhasil log in, kita tampilkan data yang ada di tabel nyobaan tadi (tabel yang sebelumnya sudah kita buat)


Data di command line 1 dan 2 masih sama kaaaan, gak ada yang beda. sekarang kita coba kita insert lagi data di command line yang berlatar hitam


lalu kita select * lagi di kedua command line, coba kita lihat ada yang beda gak yaaaaaaaaaaaaaa hehe



Nah lhoooooooooo ternyata ada yang beda, di command line yang hitam data nya udah nambah,s ementara di command line yang putih datanya tetep. kira-kira kenapa yaaaaaa ?

Itu terjadi karena data yang ditambahkan belum dicommit, inget kan bahwa commit berfungsi untuk menandakan bahwa transaksi telah selesai dilaksanakan.

Sekarang biar bener, kita commit dulu data yang tadi, caranya :


Kalo udah beres dicommit, sekarang kita coba tampilin data yang ada di command line warna putih :



Tuh kaaan, kalo udah dirollback transaksinya, maka kedua data sama :)

SAVE POINT

Save Point secara sederhana merupakan sebuah titik aman, dimana kita telah menyelesaiakan satu atau beberapa transaksi. Save point dapat dianalogikan seperti sebuah check point saat kita bermain game.
Fungsi dari save point adalah agar pada saat kita ingin rollback atau ada transaksi yang gagal, transaksi tidak berjalan dari awal kembali, tetapi dari save poin yang telah kita buat.
Untuk membuat sebuah save point, caranya adalah :

SAVEPOINT[nama save point];

Setelah dibuat save pointnya kita dapat rollback ke save point tersebut dengan cara :

ROLLBACK TO[nama save point];

Kita langsung praktekin yaaaaaa, misalkan nih kita tambahin lagi data ke tabel nyobaan tadi



Sekarang, kita bikin savepointnya, misalkan nama savepointnya rifkanis



Kalo savepointnya udah jadi, tinggal kita rollback ke savepoint yang udah kita buat tadi, dan ketika kita mau menampilkan data yang terakhir kita buat, maka data terakhir lah yang akan muncul, data akan tetap ada tanpa kita harus kehilangan atau memulai lagi dari awal.



ISOLASI TRANSAKSI

Dalam transaksi database, ada 3 hal yang harus dicegah yaitu.

 Dirty Read
Transaksi membaca data dari hasil transaksi lainnya yang gagal. Kedua transaksi tersebut berjalan bersamaan.

 Non-Repeatable Read
Transaksi membaca ulang data yang telah di baca sebelumnya karena data tersebut telah di modifikasi oleh transaksi lainnya.

Phantom Read
Transaksi membaca sebuah data yang telah hilang akibat dari transaksi yang lainnya.

Untuk mencegah 3 hal tersebut, maka dalam Oracle terdapat 2 level isolasi yang dapat diimplementasikan, yaitu :

 Read Commited
Transaksi hanya dapat melihat perubahan data setelah transaksi lain telah commit pada data tersebut. (Seperti dalam contoh commit)

 Serializable
Adalah level isolasi yang menyediakan isolasi transaksi yang paling ketat. Level ini mengemulasikan eksekusi transaksi secara serial, menjadikan transaksi dieksekusi satu setelah yang lainnya,seperti secara serial, bukan secara bersamaan (pararel). Tetapi aplikasi yang menggunakan level isolasi ini harus bersedia untuk mengulangi transaksi dikarenakan kegagalan pengserialan transaksi. Saat transaksi berada pada level serializable, sebuah query SELECT hanya melihat data yang di COMMIT sebelum transaksi di mulai; transaksi tersebut tidak akan pernah melihat baik data yang belum di COMMIT atau perubahan data yang terjadi selama eksekusi transaksi oleh transaksi lain yang berjalan pada waktu bersamaan (e.g. saat transaksi ini berjalan, ada transaksi lain yang melakukan COMMIT pada data). Jika pada transaksi dengan level isolaso Serializable mengandung DML (Data Manipulatin Language) yang mencoba untuk meng-update suatu data yang mungkin sudah di update pada sebuah transaksi yang belum di commit pada awal transaksi Serializable, maka perintah DML tersebut akan gagal.
Untuk mengaplikasikan level isolasi Serializable, adalah dengan menggunakan perintah :

SET TRANSACTION ISOLATION LEVEL SERIALIZABLE;



Isolasi level ini mencegah terjadinya Phantom Read.

LOCKING PROTOCOL

Pada transaksi database, dikenal istilah locking yang berfungsi untuk menjaga integritas data. Terdapat dua buah metode locking yaitu :

 Shared Lock (S-LOCK)
Jika transaksi memiliki shared lock pada suatu data, transaksi tersebut hanya bisa melakukan pembacaan.

 Exclusive Lock (X-LOCK)
Bagi transaksi yang memiliki exclusive lock pada suatu data, transaksi tersebut dapat melakukan perubahan dan pembacaan terhadap data tersebut.

Untuk shared lock, dapat dimiliki oleh beberapa transaksi dalam satu waktu, namun untuk exclusive lock, hanya dapat dimiliki oleh satu transaksi pada satu waktu.

 PENGUNCIAN LEVEL TABEL

Penguncian yang berfungsi untuk mengunci suatu tabel untuk mencegah perubahan atau penghapusan tabel selama ada transaksi yang menggunakan tabel tersebut.
Untuk melakukan perintah penguncian tabel, adalah sebagai berikut.

LOCK TABLE [nama tabel];

PENGUNCIAN LEVEL BARIS

Penguncian yang dilakukan pada baris (ROW) yang sedang digunakan oleh suatu transaksi sampai transaksi tersebut selesai dilakukan. Penguncian level baris hanya berlaku untuk operasi UPDATE dan DELETE.

DEADLOCK

Merupakan situasi dimana dua atau lebih transaksi dalam kondisi wait-state, satu sama lain menunggu Lock dilepas sebelum di mulai.

-------------------------------------*************************--------------------------------------

Itu tadi sekilas tentang transaksi pada oracle, semoga bisa bermanfaat dan mohon maaf apabila banyak kesalahan :)



















Selasa, 25 Februari 2014

NETBEANS INSTALLATION & JSP

INSTALLASI NETBEANS


Setelah seru-seruan dengan Oracle,sekarang kita masuk ke instalasi Netbeans . Netbeans adalah sebuah Integrated Development Environment bagi programmer yang ingin mengembangkan aplikasi Java didalam J2SE, J2ME, atau J2EE. Selain itu didalam Netbeans pun terdapat beberapa bahasa pendukung seperti Jython, Ruby, C/C++ dan PHP.

1. Pastikan Anda sudah mempunyai installer Netbeans.Jika sudah punya klik dua kali installer




2. Tunggu beberapa saat hingga muncul Prompt disamping. Disana Anda akan diinstallkan beberapa Aplikasi yang sudah terintegrasi di dalam Netbeans. Karena kita akan menggunakan Netbeans untuk membuat JSP danServlet.Kita tekan dulu tombol Customize.



3. Jika Anda sudah menekan tombol Customize maka akan tampil prompt yang menampilkan bahwa disana Anda bisa menentukan aplikasi apa saja yang akan diinstall. Tapi untuk keperluan kali ini yaitu membuat JSP dan Servlet. Anda harus mencheck checkbox Apache Tomcat.

ApacheTomcat adalah salah satu aplikasi server yang digunakan untuk me-run JSP dan Servlet yang kita buat. Glass Fish pun termasuk server untuk JSP dan Servlet. Tapi kita akan gunakan Apache Tomcat saja. Jika sudah dichecklist .Tekan OK.


4. Maka semua aplikasi yang Anda pilih akan muncul diprompt berikut. Klik Next



5. Lalu muncul Term of Agreement dari Netbeans. Pilih saja I Accept The Terms License Agreement. Kemudian tekan tombol Next.



6. Berikutnya Anda akan menentukan lokasi instalasi Netbeans dan mencari tempat instalasi Java Development Kit yang Anda miliki. Pastikan Anda sudah mempunyai Java Development Kit yang sudah terinstall.



7. Selanjutnya Anda akan menentukan lokasi instalasi untuk Glass Fish dan Apache Tomcat. Setelah Anda menentukan lokasi instalasi kedua aplikasi tersebut tekan tombol Install.


Tunggu sampai proses instalasi selesai sehingga Netbeans dapat digunakan :)



MEMBUAT JSP SEDERHANA

Setelah Anda berhasil menginstal Netbeans di PC atau Laptop Anda. Sekarang kita tinggal mencoba membuat sebuah halaman JSPdi Netbeans.

a. Pertama, buka Netbeans yang sudah terinstall di PC atau Laptop Anda.
b. Kemudian pilih File --> NewProject. Maka akan tampil prompt seperti berikut :



Disana terdapat banyak pilihan untuk membuat aplikasi yang anda inginkan .Untuk latihan ini kita pilih Java Web untuk membuat JSP dan Servlet. 
Pilih JavaWeb --> WebApplication. Kemudian tekan tombol Next.

c. Kemudian akan muncul prompt seperti berikut :




Pada prompt diatas Anda bias menentukan nama project, lokasi project dan folder project. Sekarang kita ubah nama projectnya menjadi rifkanyobaan. Kemudian klik tombol Next.
Lalu akan muncul prompt seperti  di bawah ini :


Disini Anda harus menentukan server apa yang akan dipakai untuk pembuatan aplikasi web
Anda. Untuk kali ini gunakan Apache Tomcat. Kemudian tekan tombol Next. 

d. Berikutnya akan muncul prompt seperti berikut :


Disini kita bias menentukan frame work apa yang akan dipakai. Tapi untuk latihankali ini kita tidak akan memakainya. Jadi klik Finish saja.

e. Jika selesai menentukan project. Secara default Netbeans akan menampilkan halaman index.jsp dari project yang kita buat seperti berikut :


Halaman tersebut berisi sintak HTML dan JSP. Untuk menguji cobanya tekan tombol berbentuk tombol Play atau tekan F6.

f. Saat tombol Play ditekan, Netbeans akan melakukan beberapa task yang tidak ditampilkan seperti mengaktifkan Apache Tomcat, mengcompile file jsp, menginstall aplikasi web Anda di Apache Tomcat dan beberapa task lainnya.Tapi dengan memakai Netbeans kita langsung disuguhkan browser dengan hasil seperti ini :





g. Selanjut nya tambah kan sintaks berikut dibawah kata‘HelloWord’


Sintaks tersebut akan menampilkan looping sederhana i.

Setelah dieksekusi, maka hasilnya adalah :















ORACLE INSTALLATION & MAKE A SIMPLE CRUD

INSTALLASI ORACLE

Oracle Corporation adalah salah satu perusahaan pembuat software yang terkenal khususnya pada Database software.Perusahaan ini telah mengeluarkan banya versi dari mulai dari oracle 6.0,8i, 9i hingga 10g. Disin ikita akan coba install Oracle 10g Express.

1. Langkah pertama, double klik installer oracle 10g Express Edition yang ada di laptop kalian, sampai muncul dialog box seperti ini : 



2. Selanjutnya, oracle akan memunculkan dialog seperti di bawah ini, klik next..


3. Selanjutnya muncul dialog yang berisi persetujuan untuk instalasi software ini.Jika Anda berkenan lebih baik baca saja persetujuan ini agar tahu etika penggunaan software ini, dan pilih I accept the terms in the lissence agreement


Setelah Anda menyetujui persetujuan,selanjutnya klik next

4. Kemudian Oracle installer akan meminta anda untuk menentukan direktori untuk instalasi oracle,secara default oracle sudah menentukan di C:\OracleXE, anda bisa merubahnya namun disarankan untuk mengikuti default.


5. Anda akan diminta untuk membuat password user SYS dan SYSTEM. Kedua user ini merupakan user tertinggi dalam system Oracle, masukkan password dan jangan sampai lupa paswwordnya


lalu klik next

6. Kemudian, akan tampil dialog seperti di bawah ini,installer akan memberikan informasi mengenai port HTTP yang akan digunakan oleh APEX(ApplicationExpress) agar anda bisa mengelola database nantinya.


Klik Install, dan proses installasi akang berlangsung selama beberapa menit, dan harap menunggu sampai selesai yaaaaaa :)

7. Ketika proses installasi sudah selesai, maka akan muncul dialog box seperti dibawah ini, lalu klik finish yang menandakan bahwa installasi oracle pada PC/laptop Anda sudah berhasil :) 



ORACLE & DATABASE HOMEPAGE

Setelah tahap installasi berhasil,selanjutnya kita akan mencoba Oracle Database Homepage. Berikut adalah tahapan-tahapan penggunaannya :

1. Pada saat installasi berhasil, maka jendela browser akan menampilkan laman awal Oracle Database Express Edition. Atau bisa juga diakses dengan cara search di windows lalu ketikkan keyword DATABASE HOMEPAGE


 tampilan yang muncul adalah seperti di bawah ini :


2. Masukkan username dan password sesuai keinginan Anda, tapi tetap jangan sampai lupa yaaaaaaa :)
    lalu, klik Login

3. Setelah Login, Database Homepage akan masuk ke Home, dengan tampilan seperti ini :



4. Untuk menggunakan SQL Oracle di Database Homepage pilih SQL, lalu pilih SQL Commands...



lalu, akan muncul halaman SQL seperti berikut :



Perlu diperhatikan dan diingat yaaaa, setelah Anda selesai menggunakan Oracle Database Homepage pastikan Anda melakuakan logout agar keamanan data terjamin :) 

PENGGUNAAN SQL+

Selain menggunakan tampilan berbasis GUI seperti Oracle Database Homepage.Kita juga bisa menggunakan aplikasi SQL Plus yang berbasis command line. Kita bisa search di menu windows, lalu ketik keyword nya Run SQL Command Line.



1. Setelah SQL Command Line muncul,sama seperti Oracle Database Homepage,Anda harus memakai account yang dibuat saat pertama kali instalasi, lalu ketikkan connect system, klik enter



2. Setelah connected maka Anda sudah bisa menggunakan database.



3. Untuk melihat table apa saja yang ada pada sistem, berikut sintaksnya :
    select * from tab;  


 lalu akan muncul table apa saja yang ada pada sistem databasenya


4. Setelah selesai menggunakan aplikasi ini, Anda harus melakukan Logout. Caranya dengan mengetikan       sintaks berikut :
disc, klik enter




SIMPLY CRUD WITH ORACLE DATABASE HOMEPAGE

1. Pertama Anda harus Login dahulu sebagai system.

2. Setelah Login dan sebelum memulai proses CRUD, Anda harus membuat database baru. Dengan akun system ini, kita akan membuat Database user baru dengan nama Latihan.

3. Untuk membuat user baru pilih Administrator, Database Users, pilih Create User


Kemudian, akan muncul halaman berikut ini :


Pada halaman ini, kita diminta untuk mengisikan data baru yang terdiri dari username, password, status, role,dan grant system privilage.

Account Status Lock adalah status dimana akun tidak bisa diakses.

Role adalah jabatan yang dimiliki user. Misal user diberikan role DBA, maka user bisa membuat user baru.

Grant System Privilage adalah aktivitas-aktivitas yang bias dilakukan oleh user tersebut.

4. Isikan form tersebut dengan data-data sebagai berikut :



lalu pilih create

5. Setelah mengisikan data user baru,maka user akan bertambah.

6. Sekarang kita sudah berhasil membuat user baru dengan nama RIFKANIS. Selanjutnya kita akan pakai user baru tersebut .Untuk memakainya kita harus logout terlebih dahulu dari akun RIFKA.

7. Setelah Logout, maka Anda harus Login lagi dengan akun RIFKANIS yang telah Anda buat tadi :)




Di dalam akun Latihan terdapat menu baru yaitu Application Builder.Application Builder adalah sebuah fitur dari Oracle yang akan dipergunakan oleh user Oracle untuk membuat sebuah aplikasi tanpa membuat coding. Kita hanya diberikan pilihan–pilihan apa yang akan ditampilkan diaplikasi kita.Hanya saja kita tidak akan membahas menu ini, mungkin di lain posting saya akan membahas ini, para pembaca budiman :3

8. Kita pilih menu SQL kemudian pilih SQL Command Karena kita akan membuat sebuah table Pegawai.

9. Pada halaman SQL Command ketikan sintaks berikut : 



untuk mengeksekusi pilih Run.




l0. Untuk memastikan apakah table Pegawai sudah dibuat, kembali ke Home lalu pilih Object Browser, Browse, Table


Jika sudah ada, maka akan tampil halaman seperti berikut :


double click pada Pegawai, maka akan muncul :



Setelah table Pegawai dibuat , kita akan lakukan CRUD. 

  • Pertama kita akan mencoba untuk menambah data. Masih di halaman Object Browser, pilih Data, selanjutnya terdapat menu Query untuk melakukan select berbasis form, Count Rows untuk menghitung jumlah row, dan Insert Row untuk menambah data pada tabel.


Pilih Insert Rows, maka akan muncul tampilan seperti di bawah ini :


   Isi data sesuai kebutuhan, sebagai contoh isikan data seperti berikut : 


Pada saat isi data terdapat 3 pilihan, yaitu :
Cancel untuk membatalkan.

Create untuk menambahkan data hanya satu kali.

Create and Create Another untuk menambahkan data berulang kali.

Untuk kali ini pilih Create dan isikan data satu kali sesuai ketentuan.

11. Setelah data diisi,Anda bisa melihat data-datanya pada menu Data 


Data berhasil diinputkan.

12. Sekarang kita akan coba Edit data.Perhatikan icon pada tabel. Icon tersebut adalah shortcut untuk masuk ke proses editing row. Klik icon pada data yang akan kita edit. Maka akan masuk pada halaman Edit Row





Misal kita akan edit nama‘Rifka Annisa’menjadi ‘Rifka Annisa Jelita’. Setelah diubah pilih Apply Changes.


Data sudah berubah :



Setelah bereksplorasi menggunakan Oracle Database Homepage. Kita beralih ke SQL untuk mencoba beberapa perintah SQL dasar di Oracle.

a. Pertama pilih menu Home, lalu pilih SQL,setelah itu pilih SQL Commands.Lalu ketikan query berikut :



Selanjutnya pilih Run. Maka pada pilihan Result akan menampilkan hasil eksekusi dari query tersebut.Query tersebut berfungsi untuk menampilkan seluruh data pada table Pegawai. seperti gambar di atas.


b. menampilkan kolom nama saja, darii table pegawai, berikut query dan tampilan table yang akan muncul :



c. Mengahpus table pegawai, dengan mengetikkan query :



akan muncul pemberitahuan 'Table dropped' artinya bahwa table pegawai sudah terhapus dari database.

13. Selanjutnya, kembali ke menu home, tekan tombol panah yang ada disisi kanan menu Object Browser. Kemudian pilih menu Create dan pilih Table. Maka Anda akan diarahkan kehalaman seperti gambar berikut:


Pada gambar diatas bias Anda lihat ada beberapa langkah yang harus dilalui saat pembuatan tabel.Untuk langkah pertama isikan data seperti gambar di bawah ini :



Jika Anda sudah mengisikan kolom beserta tipe dan panjang datanya . Lanjut ke langkah selanjutnya dengan menekan tombol Next.

Selanjutnya kita akan coba menentukan primary key dengan memilih menu Populated from a new sequence. Kemudian dibagian Primary Key Anda pilih kolom no_pegawai untuk dijadikan Primary Key.


Klik next..

Bagian ini kita tidak akan menentukan Foreign key karena table yang kita buat masih satu tabel. Disini belum ada latihan untuk relasional database jadi kita skip saja bagian ini dengan menekan tombol Next.



Pada gambar diatas pun kita diberikan pilihan untuk menentukan Constraint. Tapi kita skip saja dulu bagian ini karena akan dibahas dipostingan lain, Insya Allah. Jadi tekan saja tombol Finish.
Disini Anda akan diyakinkan dengan diperlihatkan hasil SQL yang Anda buat dari langkah– langkah sebelumnya





Setelah Anda yakin, klik tombol Create. Jika berhasil maka Anda akan dibawa ke Object Browser dan menampilkan hasil table yang dibuat. seperti di bawah ini :



********** SELESAI. SELAMAT MENCOBA. SEMOGA BERMANFAAT :) **********