Kemungkinan teknik untuk mengetest kehadiran katakanlah customernya 
belum benar. Ini contoh yang benar dalam sintak sql

begin tran
set implicit_transactions off
set transaction isolation level serializable
select CustomerCode from General.Customer  a
where a.CustomerCode='a'
with (tablockx)

--rollback

Jangan lupa mengganti general.customer dengan table sembarang yang ingin dicoba 
dan customercode dengan field yang ingin ditest dan 'a' dengan nilai yang ingin 
ditest. 

Copy semuanya sampai ke tulisan --rollback dan jalankan di sql server 2000 +

jalankan. Pasti sukses. Jangan dihapus -- dari --rollback.
Buka query baru. copykan perintah di atas ke query baru tersebut.
lalu jalankan.
Dijamin tidak jalan. Jalan sich jalan tapi kayak nggak dapet data terus..
Hanya akan jalan setelah di query pertama menjalankan perintah rollback.

Block text rollbacknya di windows pertama dan jalankan (tekan tombol f5)

tablockx harus ada untuk mencegah masalah latency dan concurency.
Masalahnya adalah di lock yang sifatnya pesimistis.

Jadi lebih baik pake cara lain antara lain :
1. optimistik lock
2. auto key generator.









________________________________
From: Edwar Rinaldo <[email protected]>
To: [email protected]
Sent: Wed, July 21, 2010 1:11:30 PM
Subject: Re: [programmer-vb] mencegah double data

  
 
Apa dan bagaimana cara mengukur performa aplikasi mas, klo  query bisa kita 
ambil execution time nya dan itu juga tergantung dari kemampuan  mas mengolah 
query nya, tapi klo "pelosok2" yang mas katakan kmrn2, bandwith  bukan masalah 
nya ???
 
Jadi sehebat apapun aplikasi yg mas buat, tapi bandwith dan  infra nya tidak 
mendukung, wassalam saja. 

 
Notes: Tempat saya bekerja punya cabang di makassar, medan,  dan dimana, kita 
pake VB 6 dan SQL Server, masih fine2 sajah, kecuali speedy nya  down, kita 
tewas he..he.he..
 
Regards,
 
Ado
 
 
----- Original Message ----- 
>From: johan max 
>To: programmer-vb@ yahoogroups. com 
>Sent: Tuesday, July 20, 2010 9:08  PM
>Subject: Re: [programmer- vb] mencegah    double data
>
>  
>Kalo    pake transaction dalam kasus ini harus menggunakan table level    lock.
>Seluruh table dilock untuk write bukan 1 row saja. 
>Yang masalah    adalah lock seluruh tablenya itu.
>Karena ini benar-benar menurunkan    performa.
>
>
________________________________
 From: johan max <johans...@yahoo. com>
>To: programmer-vb@ yahoogroups. com
>Sent: Tue, July 20, 2010 3:19:41    PM
>Subject: Re:    [programmer- vb] mencegah double data
>
>  
>  
>Bisa, Karena
>1. Di VB 6 itu ada yg namanya IsolationLevel, property ini    berguna untuk 
>locking database record yang sedang menggunakan transaction,    sebelum 
>transaksi di commit, transaction bakalan dikunci (bukan tidak bisa    insert 
>ya). 
>
>
>==> koreksi bukan di vb tapi di standard database sql    92.
>==> menggunakan lock bermasalah karena 
>==> a. menurunkan kinerja (konkurensi turun)
>==> b. harus ada admin yang monitor database kalo lock kemudian mati    
>program 
>yang ngelocknya bisa terjadi deadlock
>
>1.1.    Tergantung dari Mas nya bagaimana cara pengambilan Id terakhir ata 
>view 
>dari    database, Klo sudah bicara ke pelosok2 seperti mas bilang, itu harus 
>ada,    locking record nya. 
>
> 
>2. Makanya perlu dokumentasi sistem mas, dari ERD,    DFD sampe ke ke "cucu2" 
>nya.
>==> ini benar. Tetapi masalah utama dokumentasi adalah    :
> ==> a. lengkap ?
>==> b. paham ?
>==> c. gampang dipahami    ?
>==> d. Yang terutama TIDAK MENGINTIMIDASI (pernah    baca yang 500 halaman 
>liatnya aja udah males)
> 
>3. Yang ini aku kurang jelas mas, klo masalah jebol atau    tidak nya kita 
>ikhtiar saja mas, selagi kita mampu membuat suatu sistem yg    menurut kita 
>tangguh (berdasarkan pengujian / testing yang kita lakukan secara    halus 
>atau 
>ekstrim sekalipun, tpi harus mengikuti flow yg berjalan yah)     It's Fine 
>Sajah 
>..
>
> ini sebetullnya sama dengan nomor 2 tapi dilihat dari    enterprise 
>architecture.
>
>  
>----- Original Message ----- 
>>From: johan max 
>>To: programmer-vb@ yahoogroups.      com 
>>Sent: Monday, July 19, 2010 2:11      PM
>>Subject: Re: [programmer- vb] mencegah      double data
>>
>>  
>>Mas      ado, cara ini nggak bisa dipakai karena :
>>
>>1. round trip network
>>
>>misal      databasenya di jawa, diakses dari ujung pelosok irian.
>>kalo fungsi ini      dijalankan misalkan 2 orang bersamaan mau pake
>>karena keterlambatan      jaringan jadi nggak valid.
>>
>>2. tidak memikirkan maintenace
>>Cuma      dipikir waktu develop waktu maintenance gimana.
>>Waktu maintenance orang      lain yang ngerjain nggak tahu ini harus unik
>>atau gimana hajar bleh. 
>>
>>3. tidak ada peta data.
>>Peta data itu menggambarkan hubungan data      dan karakterisitk mereka.
>>Kalo nggak punya ini applikasi susah sekali      dikembangkan
>>karena gampang jebol.
>>
>>4. 
>>
>>
________________________________
 From: Ado      <a...@gramediapublish ers.com>
>>To: programmer-vb@ yahoogroups.      com
>>Sent: Sat, July 17,      2010 12:56:26 PM
>>Subject: Re: [programmer- vb] mencegah double data
>>
>>  
>>Coba jawab mas,
>>
>>Menuru aku gak masalah .net ato 6, itu cuma      masalah logic aja mas dan 
>>bisa 
>>diterapin di bhsa program apapun, klo      pertanyaan kyk gt, biasa nya aku 
>>buat 
>>satu function entah namanya apa, aku      biasa kasih nama gfDataIsOkay( ) as 
>>integer, jadi balikan nya -1, validasi      gagal, 1 validasi berhasil.
>>
>>Klo mau mencari data yg sudah ada, mas      bisa query kan ke db yg "=", jika 
>>sama, beri warning dan keluar dari      function.
>>
>>Semoga membantu.
>>Regards, Ado 
>>
>>* Original message      *
>>From:
>>generasi_com@      yahoo.com
>>Sent:
>>21:19:40
>>16-07-2010
>>To:
>>programmer-vb@ yahoogroups.      com
>>Subject:
>>Re: [programmer- vb] mencegah double data dari yg di      input lewat form 
>>dengan data yang ada di DB
>>
>>Harusnya di forum programmer-vb.      net mas, coba posting ulang, forum ini 
>>sebaiknya 
>>
>>hy utk vb6      aja.
>>
>>Salam kenal
>>
>>____________ _________ _________ __
>>From:      dicky petrus <keyblade_oathkepper      @yahoo.co. id>
>>To: programmer-vb@ yahoogroups.      com
>>Sent: Fri, July 16, 2010 3:31:22 AM
>>Subject: [programmer- vb]      mencegah double data dari yg di input lewat 
>>form 
>>dengan 
>>
>>data yang ada di      DB
>>
>>sore, 
>>mau tanya ni..dijawab ya..
>>saya mau tanya scrip pake vb.net masalahnya 
>>saya pgn buat validasi data antara data yang udah ada di database dengan      
>>data 
>>
>>yang kita inputkan, 
>>
>>jadi kalo misal kita input nama/ no tlp      , kalo di database udah ada nama 
>>yang 
>>
>>sama atau no tlp jadi keluar      notification gt..
>>
>>mohon dibales, makasih banyak 
>>
>>.:: Group of      Book Publishing - Kompas      Gramedia
>>
>>
>>.:: Group of Book      Publishing - Kompas    Gramedia
>>
>
>
>.:: Group of Book Publishing - Kompas Gramedia
>
 


      

Kirim email ke