Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
TERJAWAB [solved][ask] logika numbering data (relasi)
#1
selamat malam...

saya mau tanya mengenai logika penomoran pada data di database.
begini, sekelompok data yang di input dalam satu form akan disimpan pada satu database tapi tidak pada satu table, misal :

data: nama, alamat, kota disimpan pada table 'personal'
data: riwayat pendidikan, riwayat pekerjaan disimpan pada table 'riwayat'

pada saat pembacaan untuk yang sudah ada kedua table tersebut dihubungkan berdasarkan kunci unik (misal: ID). yang menjadi kekhawatiran saya adalah pada saat pembuatan data tersebut.

misalkan user A menginput data 'fulan', ketika user A masih dalam proses input user B menginput data 'fulin' dan user B lebih dulu men-save datanya.

apakah data 'personal' yang diinput user B tidak akan tertukar dengan data 'riwayat' yang diinput oleh user A?

terlintas untuk bikin kunci tambahan berdasarkan login id masing-masing user ditambah angka yang unik, tapi masih bingung dengan cara yang paling efektif seperti apa  Rolleyes

bagaimana logika terbaiknya ya? ato ada sapmle scriptnya?

terima kasih.
Reply
#2
malam,..

kalau saya, biasanya menggunakan id yang auto increment sebagai primary key nya.
Jadi nanti diwaktu penggunaan2 seperti kasus yg Anda sebutkan tadi bisa diatasi dengan mysql_insert_id.
Jadi sebagai contoh kasus Anda:

Tabel Master User:
- id (auto increment)
- username
- nama_lengkap

Tabel Riwayat Pendidikan:
- id (auto increment)
- user_id <-- disini diisi ID nya tabel Master User
- tahun
- keterangan

contoh penggunaan script php:
PHP Code:
// konek database
    // insert database
    
mysql_query("INSERT INTO `user` (`username`, `nama_lengkap`) values ('fulan', 'Fulan bin Fulin')");
    
$user_id mysql_insert_id(); // <-- dapetin user_id setelah insert

    // lakukan insert ke data riwayat
    
mysql_query("INSERT INTO `riwayat` (`user_id`, `tahun`, `keterangan`) values ('".$user_id."', '2006', 'SMA Swasta 1')"); 

selengkapnya ttg fungsi mysql_insert_id:
http://id2.php.net/manual/en/function.my...ert-id.php
Reply
#3
simple, mudah dicerna Wink
terima kasih mas, case solved...

tapi ada kelemahannya gak dengan cara seperti ini?
Reply
#4
r45 Wrote:simple, mudah dicerna Wink
terima kasih mas, case solved...

tapi ada kelemahannya gak dengan cara seperti ini?
sementara ini yg saya pergunakan blm ada kelemahan nya mas Big Grin
lancar2 saja mas... tidak ada bentrok...
karena ID master tercipta benar2 setelah proses INSERT data master tsbt., jadi gak bakalan bentrok, karena autoincrement udah otomatis di handle oleh MySQL.
Reply
#5
absolutely solved Wink
terima kasih informasi tambahannya Yihaa musik Mr Green
Reply
#6
setiap forum rumus berbeda beda yah pak
Reply
#7
ternyata id itu juga penting banget yah gan
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)