|
Wah .. Thanx banged nih untuk informasinya ..
pengetahuan saya jadi bertambah...
Salam,
Thoy
----- Original Message -----
Sent: Monday, January 30, 2006 4:33
PM
Subject: {Definitely Spam?} Re:
[Programmer-VB] Auto Number thanks
thanks ini benar2 menambah pengetahuan saya
salam,
wayan
Autonumber
memiliki keunggulan sebagai berikut : 1. mudah digenerate dan murah
(tergantung pada algoritma pembuatan number)
kekurangan : bisa
menyebabkan disk contention dimana serangkaian row yang memiliki id
berdekatan diakses oleh beberapa thread
Algoritma yang anda
gunakan mengenerate untuk autonumber seperti di bawah cenderung boros
proses. Lebih jelasnya select count dan max itu bisa berarti
traversal table select count mungkin tidak jika statistik
databasenya ada tapi jika tidak ada akan terjadi table
traversal
select max pasti melakukan tabel traversal. Table
traversal adalah sebuah proses menjelajahi seluruh isi
table.
Selain itu solusi ini tidak scalable yaitu tidak mungkin
diterapkan pada sistem yang kritis karena maasalah konkurensi
dimana 2 atau lebih proses hendak membuat id dengan cara yang seperti
tadi. Apalagi tadi lock yang digunakan adalah lock optimistic. Ini
jelas masalah.
Cara yang feasible adalah 1. menggunakan
fitur autonumber dari msaccess atau fitur identity dari MSSQL Server
2k
2. membuat table ID generator contoh taIDGen ( namatable
varchar(128), nomor int, primary key (namatable))
untuk
menggunakannya gunakan cara berikut lock taidgen
select nomor+1 as
nomor2 from taidgen where namatable='nama table'
update taidgen
set nomor=nomor+1 where namatable='nama
table'
commit;
releaselock taidgen.
Untuk lebih
detailnya silahkan lihat manual. Sorry agak lupa
--- Padu
Arsana W <[EMAIL PROTECTED]> wrote:
> thanks atas
koreksinya mas Lim. :) bener banget > kelemahannya jika ada yg
terhapus maka udah pasti > ini akan manghasilkan nomor yang
sama. > > cara hapus yg saya pake
sih dgn tidak menghapus > record dari tabel tp memberi status record
tersebut. > >
> Salam, > Padu
Arsana > > > [EMAIL PROTECTED]
wrote: > > sorry ya mas Padu, nambahin dikit
nih, > Sekedar input buat mr. thoyib, kalo pake fungsi >
aggregate COUNT, > Rs.Open "SELECT Count(PMASUK.No_PM) AS JmREC
From > MASUK", CN, adOpenDynamic, adLockOptimistic >
kelemahannya adalah kalau ada record yang dihapus di > tengah2 maka
fungsi count bisa menghasilkan > penomoran yang terduplikasi. >
> mungkin bisa juga menggunakan fungsi MAX, cuma ya > agak
reprot dikit. > misal : > SELECT CAST(MAX(RIGHT(NO_PM,3)) AS
INT) AS JMREC > FROM MASUK > tapi ada kelemahannya juga, yaitu
pada saat posisi > record masih kosong dia akan menghasilkan
nilai > NULL. > jadi mesti dicek kalo isnull JMREC maka
nomor > langsung dapet 001. > > semua kembali pada kita
mo pake yang mana. > > Brgds, > Lim Agus Fitrian >
> > >
Padu Arsana W <[EMAIL PROTECTED]> > Sent by:
[email protected] 01/27/2006 >
15:53 Please
respond to > [email protected] > >
>
To >
[email protected]
cc >
Subject > Re: [Programmer-VB] Auto
Number >
> > > > Dear Mr. thoyib >
> > kayaknya udah pernah ada yang nanya and jawab
ini! > but just to help u > ...........
> > > > Wahana Programmer Groups Links >
> > > > > > >
SPONSORED LINKS >
Programmer Indonesia Basic programming >
language Computer programming languages
> Programming languages Java programming language
> >
--------------------------------- > YAHOO! GROUPS LINKS
> > >
Visit your group "Programmer-VB" on the web. >
> To unsubscribe from this group, send an
email > to: >
[EMAIL PROTECTED] >
> Your use of Yahoo! Groups is subject to
the > Yahoo! Terms of Service. >
> >
--------------------------------- > >
> > > >
>
--------------------------------- > Bring words and photos together
(easily) with > PhotoMail - it's free and works with
Yahoo!
Mail.
__________________________________________________ Do
You Yahoo!? Tired of spam? Yahoo! Mail has the best spam protection
around http://mail.yahoo.com
Wahana Programmer Groups Links
<*>
Untuk mengunjungi sponsor milis ini, klik link
berikut: http://wahanaprogrammer.net
<*>
Untuk menghubungi owner milis ini, kirim email ke:
[EMAIL PROTECTED]
<*> Konsultasi pemrogramman bisa
chat disini: Yahoo! Messenger:
wahanaprogrammer
Bring words and photos together (easily) with PhotoMail
- it's free and works with Yahoo! Mail.
Wahana Programmer Groups Links
<*> Untuk mengunjungi sponsor milis ini, klik link berikut:
http://wahanaprogrammer.net
<*> Untuk menghubungi owner milis ini, kirim email ke:
[EMAIL PROTECTED]
<*> Konsultasi pemrogramman bisa chat disini:
Yahoo! Messenger: wahanaprogrammer
YAHOO! GROUPS LINKS
|