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 >
