terima kasih buat jawabanya,
tapi untuk teknik SQL atau pemrogramanya gimana?
apakah suatu perintah SQL biasa
misalnya
UPDATE account set balx=100;
apakah bisa tergolong transaksi? atau harus ada selbih dari 1 SQL?
trus kalo SQL dg begin dan end; ?? -->
begin
UPDATE account set balx=100;
end;
/
bedanya apa?
tora fahrudin <[EMAIL PROTECTED]> wrote:
Ya mungkin mau ngejawab ... tapi mungkin tidak sempurna banget ya .. entar
biar temen temen yang lain nambahin atau ngeralat kalo saya salah.
Transaksi adalah kasus di mana sebuah resource database di akses oleh banyak
orang .. dan dalam waktu yang bisa jadi dilakukan secara bersamaan ... dimana
dalam kasus ini database harus mampu merepresentasikan transaksi tersebut
seperti kenyataan yang terjadi di dunia nyata.
Transaksi mungkin akan dilakukan dalam sebuah query ... nah contohnya seperti
ini :
A transfer ke B 50 . Rekening A mula mula 100 , B juga 100.
Nah prosedur transaksi yang dilakukan adalah sebagai berikut :
A ||
B
===============================================
read(A); // A = 100 ||
A := A - 50 ; // A = 50 ||
write(A); // A = 50 ||
|| read(B); // B
= 100;
|| B := B + 50;
// B = 150;
|| write(B);
transaksi didalam database harus memenuhi 4 syarat yaitu :
A: Atomicity => Transaksi harus berjalan secara atomik .. kalo
dalam eksekusi sebuah transaksi ada
gagal ... maka lebih baik bagi DBMS untuk
menggagalkan transaksi tersebut .. agar
kondisi database tetap konsisten ..
Dalam kasus di atas terjadi kalo misalkan setelah A
berkurang 50 , ternyata jaringan putus sehingga transaksi
B yang harusnya bertambah 50 tidak di laksanakan .. nah
kondisi seperti ini harus di tanggulangi oleh
DBMS , kalo seperti itu kan nilai rekening B
tetap 100 tetapi rekening A dah jadi 50 .. nah
duit yang 50 kemana ?? he..he.. Oleh
karena itu DBMS harus menjamin kalo transaksi gagal di
tengah jalan lebih baik di gagalkan sekalian .. jadi rekening
si A tetap seperti semula sebelum transfer .. A = 100 dan
B pun tetap 100.
C: Consistency => adalah kondisi dimana database harus konsisten ..
merefleksikan kondisi real yang terjadi di
dunia nyata.
Mungkin dalam kasus di atas .. konsisten
adalah ketika transfer berarti jumlah A + B
sebelum transaksi transfer kan harusnya sama
dengan kondisi jumlah A + B setelah
transfer. jadi A + B sebelum transfer kan 200 (asalnya dari
100 + 100) , nah kondisi setelah transfer harusnya tetep
200 dengan rincian ( A = 50 dan B = 150).
I : Isolation => kalo ini berkaitan dengan transparansi sebuah
transaksi dari pengaruh transaksi lain yang sama
sama mengakses sebuah resource .. pada waktu yang
bersamaan . Nah DBMS memberikan pilihan
bagi kita untuk menset pilihan
transparansi.Macam macamnya read committed , serializable
, read only , repeatable read . Nah penjelasan dari masing
masing bisa di lihat di
http://www.answers.com/topic/isolation-computer-science
Intinya pada saat bertransaksi , sejauh mana kita bisa
melihat perubahan perubahan yang terjadi pada resource
yang kita akses dari perubahan yang sedang dilakukan pada
resource tersebut oleh transaksi yang lain pada saat
itu juga.
D: Durability => Artinya ketika sebuah transaksi dinyatakan lancar dan
sukses , maka effek dari transaksi tersebut
harus di jamin terrefleksikan di database kita .
Jadi dalam kasus di atas kalo misalkan transaksi
transfer tersebut sukses ... maka harus di jamin
data rekening A di databse sudah berubah menjadi 50.
dan rekening B menjadi 150
Dalam kasus distributed database berarti resource di ambil dari lebih dari
satu database server . Nah dalam konsepnya mungkin agak berbeda sedikit dengan
single transaction database .. karena memerlukan pengaturan dari transaction
manajer pada tiap tiap site yang berpartisipasi dalam menjalankan sebuah
transaksi tersebut . Diperlukan pengaturan conncurency dan locking yang
terkoordinasi dengan baik antar site site tersebut agar jalannya transaksi
tetap tidak mengganggu integrasi dari database itu sendiri .
Mungkin temen temen ada yang menambahkan ... maaf bila ada yang salah dan
kurang menjawab pertanyaan .
Heriyanto KO <[EMAIL PROTECTED]> wrote: oh ya
buat sobat-sobat indo-oracle,
g agak bingung nih dgn yg namanya traksanski pada oracle.
sebenarnya transaksi itu apa sih?
bedanya dengan PL/SQL atau SQL apa?
kalo di distributed database transaction menjadi kata nomor 1 yang sering
dibicarakan?
thanks b4
__________________________________________________
Do You Yahoo!?
Tired of spam? Yahoo! Mail has the best spam protection around
http://mail.yahoo.com
[Non-text portions of this message have been removed]
Hormat,
Tora Fahrudin
---------------------------------
Groups are talking. We´re listening. Check out the handy changes to
Yahoo! Groups.
[Non-text portions of this message have been removed]
---------------------------------
Get your email and more, right on the new Yahoo.com
[Non-text portions of this message have been removed]
--
-----------I.N.D.O - O.R.A.C.L.E---------------
Keluar: [EMAIL PROTECTED]
Website: http://indo-oracle.blogspot.com
Mirror: http://indooracle.wordpress.com
-----------------------------------------------
Bergabung dengan Indonesia Thin Client User Groups,
Terminal Server, Citrix, New Moon Caneveral, di:
http://indo-thin.blogspot.com
Yahoo! Groups Links
<*> To visit your group on the web, go to:
http://groups.yahoo.com/group/indo-oracle/
<*> To unsubscribe from this group, send an email to:
[EMAIL PROTECTED]
<*> Your use of Yahoo! Groups is subject to:
http://docs.yahoo.com/info/terms/