ilustrasi
misalkan terdapat tabel temp dengan spefikasi berikut
temp
*idtemp int(10) Primary Key Auto Increment
*name varchar (30)
contoh kasus
SI A ingin mengisi table temp dengan idtemp yang urut 1-100000 bersamaan dengan itu SI B ingin mengisi beberapa record tanpa menentukan nilai idtemp. dengan kasus seperti ini besar kemungkinannya akan terjadi tabrakan karena SI A mengisi idtemp secara manual sedangkan SI B mengisi idtemp secara otomatis.
SI A bisa menggunakan fungsi lock tables;
SI A SESSION
mysql>lock table temp write
mysql>insert into (idtemp,name) values(1,"a");
mysql>insert into (idtemp,name) values(2,"a");
mysql>insert into (idtemp,name) values(3,"a");
.
. # proses mengisi sampai 100000
.
mysql>insert into (idtemp,name) values(100000,"a");
mysql>unlock tables;
Misalkan pada ketika SI B menambahkan data sebelum SI A selesai mengeksekusi query maka perintah query SI B akan di tunda sampai SI A selesai
SI B SESSION
mysql>insert into (name) values("xy"); <--- akan di pending sampai SI A selesai
Pada lock table Parameternya bisa menggunakan WRITE atau menggunakan READ Perbedaanya ketika menggunakan WRITE si B tidak bisa men SELECT dan tidak bisa INSERT,UPDATE,DELETE sebelum si A selesai. sedangkan ketika menggunakan READ si B bisa men SELECT meskipun si A belum selesai tapi si B tetap tidak bisa men INSERT,UPDATE,DELETE sebelum si A Selesai.
contoh write :
mysql>lock table temp write
contoh read :
mysql>lock table temp read
Home
belajar lock table
belajar mysql
belajar unlock table
Komputer
lock table
Mysql
unlock table
Belajar Lock Table and Unlock Tables Pada Mysql
Tuesday, September 11, 2012
Related Posts:
Belajar Lock Table and Unlock Tables Pada Mysqlilustrasi misalkan terdapat tabel temp dengan spefikasi berikut temp *… Read More
1 komentar:
thanks sudah berbagi ilmunya yah.. :D
Post a Comment