Membangun Database yang benar docx
Membangun Database yang Benar
Posted on 13/03/2012by Sofyan Efendi
Pembuatan (design) database yang baik memudahkan kita untuk memelihara dan mengupgrade
(suatu saat nanti) menjadi system database yang lebih kompleks. Dengan sistem database yang
benar, Anda tidak perlu merubah nomor telepon supplier didalam tiga tempat, tapi cukup didalam
data pusatnya. Membangun database yang benar pada awal pembuatan merupakan langkah awal
agar database Anda mudah digunakan dan dimodifikasi pada masa-masa berikutnya.
Terdapat
beberapa
langkah
dalam
membangun
1. Tentukan
tujuan
2. Tentukan
table-table
3. Tentukan
4. Tentukan
field-field
table
yang
yang
database
yang
baik,
pembuatan
akan
database.
yang
dibutuhkan
didalam
digunakan
yaitu:
diperlukan.
masing-masing
secara
table.
bersama-sama.
5. Identifikasi field-field yang akan menjadi kunci, baik primary key maupun foreign key.
6. Tentukan
relationships
antara
masing-masing
table.
7. Check ulang, kemudian coba ringkaskan kembali design database yang sudah dibuat (jika
memungkinkan).
8. Memasukkan
9. Menciptakan
data
object-object
statis
kedalam
database
table.
lainnya.
Langkah 1 – Tentukan tujuan pembuatan database
Inilah
langkah
-
Hendak
-
Apa
-
Siapa
dasar
digunakan
tujuan
saja
yang
harus
untuk
apa
pembuatan
user
atau
pengguna
Anda
database
database
database
tentukan:
Anda?
ini?
Anda?
Dengan memahami langkah ini, maka salah satu pondasi dasar database telah selesai Anda buat.
Dengan demikian, kita tinggal memikirkan apa saja yang kita butuhkan untuk membangun
database
ini.
Langkah 2 – Tentukan table-table yang diperlukan
Sebagaimana membuat bangunan rumah, setelah selesai membuat sketsa, tentulah menentukan
bahan bangunan apa saja yang dibutuhkan untuk mewujudkan sketsa tersebut menjadi bangunan
jadi yang diinginkan. Pada database, bahan dasar untuk membangun database adalah table.
Bertanyalah kepada user (pengguna) yang hendak menggunakan database Anda, apa yang
sebenarnya mereka kehendaki dari database yang akan Anda buat. Uraikan secara detail output
atau laporan yang akan mereka butuhkan didalam database yang akan Anda buat. Kumpulkan
sketsa dan format apa saja yang mereka kehendaki. Buatlah sketsa database menggunakan pensil
atau ballpoint didalam kertas kosong, dimana didalam sketsa ini memperlihatkan table-table
yang
kira-kira
akan
diperlukan
nantinya.
Gambar contoh Sketsa Database yang saya buat diatas kertas HVS
Semakin banyak daftar informasi yang telah Anda terima dari mereka (user) akan memudahkan
perancangan awal pembuatan database. Maka disinilah akan muncul berbagai ide didalam
pikiran dan hati Anda. Apa yang harus Anda lakukan, apa saja yang Anda butuhkan, dan lainlain. Dengan demikian Anda akan memahami table dan field apa saja yang dibutuhkan untuk
membangun
database
tersebut.
Langkah 3 – Tentukan field-field yang dibutuhkan didalam masing-masing table
Masing-masing table mempunyai field-field yang harus Anda tentukan. Sebagai contoh, Anda
telah menentukan table Daftar Supplier, tentu saja didalam table ini harus memuat data-data
seperti: Nomor Supplier, Nama Supplier, Alamat Supplier, Nomor Telepon Supplier, dan lainlain. Maka disinilah field-field tersebut dibuat, dan janganlah terburu-buru menyelesaikan
langkah ini. Pikirkanlah kembali, benarkah hanya field-field tersebut yang Anda butuhkan.
Sebab, membuat field susulan kadangkala akan merepotkan nantinya, dan bisa jadi akan
memodifikasi sebagian besar database Anda, jika memang field tersebut dibutuhkan oleh hampir
sebagian
besar
object
didalam
database
Anda.
Janganlah ada suatu field yang merupakan hasil perhitungan dari field-field lainnya didalam
table. Misalnya saja, didalam table Daftar Pesanan terdapat field Quantity dan field Harga, maka
janganlah menambahkan field Total Harga didalam table ini, karena kita bisa menggunakan
object
query
untuk
melakukan
ini,
tidak
perlu
didalam
table.
Jangan pula menambahkan field-field yang sifatnya daftar suatu materi didalam table utama.
Contoh, Anda menambahkan field daftar produk yang Anda pesan dari supplier didalam table
Daftar Supplier yaitu field Produk1, field Produk2, dan field Produk3. Ini akan sangat
merepotkan ketika kita hendak mencari supplier apa saja yang mempunyai produk tertentu, dan
yang lebih merepotkan adalah seandainya terdapat supplier yang daftar produknya lebih dari
tiga, maka Anda harus menambahkan field tambahan didalam table Daftar Supplier. Cara yang
benar adalah cukup daftar produk ini disimpan didalam table Master Barang, kemudian
tambahkan
disana
Nomor
Supplier-nya.
Jangan pula menambahkan field-field statis yang sama didalam beberapa table yang berbeda.
Contoh, jika Anda telah membuat field Nama Supplier didalam table Supplier, maka Anda tidak
perlu menambahkan field Nama Supplier didalam table Order, karena Nama Supplier ini bisa
diambil dengan menggunakan object query. Namun jika field tersebut dinamis yang sifatnya bisa
berubah, misalnya saja Harga Barang, maka Anda boleh menambahkan field Harga Barang ini
didalam
table
Order
dan
table
Master
Barang.
Langkah 4 – Tentukan table yang akan digunakan secara bersama-sama
Sebagaimana kita tidak perlu membuat field statis yang sama didalam beberapa table, jangan
juga kita membuat table statis yang sama didalam suatu database. Jadi Anda tidak perlu membuat
table Master Barang khusus untuk supplier A, sedangkan untuk supplier B Anda membuat table
Master Barang yang lain. Seandainya akan dibuat form atau report dari data tersebut, maka Anda
akan bekerja dua kali, dan ini akan lebih memakan waktu. Dan yang lebih merepotkan lagi
adalah seandainya terjadi perubahan design table didalam table yang satu, maka table lainnya
harus
dirubah
juga.
Table-table statis yang akan digunakan secara bersama-sama umumnya merupakan data master,
dengan demikian seandainya terjadi perubahan data didalam table master, maka secara otomatis
pada table-table lainnya akan ikut berubah. Inilah salah satu keunggulan database Access,
bekerja secara sistematis serta mengupdate data kedalam semua table yang berhubungan.
Langkah 5 – Identifikasi field-field yang akan menjadi kunci
Setelah membuat table, tentukanlah field-field yang akan menjadi kunci (primary key dan
foreign key). Primary key berguna agar data didalam table tidak duplikat atau double, sedangkan
foreign key berguna untuk menghubungkan field primary key didalam table master ke suatu field
pada table detail. Tambahkan pula index kedalam beberapa field yang ditentukan, baik index
jenis
Duplicate
OK
ataupun
No
Duplicate.
Field kunci, baik primary key maupun foreign key serta index harus ditentukan sejak awal,
dengan demikian design database pada langkah berikutnya akan mudah. Khusus untuk primary
key jenis number, sebaiknya menggunakan type AutoNumber (Long Integer) agar user tidak
perlu
menginput
lagi.
Langkah 6 – Tentukan relationships antara masing-masing table
Setelah Anda membuat field kunci, maka hubungkanlah kunci-kunci ini dengan suatu hubungan
yang Anda tentukan, yaitu melalui relationships yang telah disediakan oleh Access (pelajari
kembali relationships yang sudah penulis jelaskan pada pelajaran sebelumnya). Ingat!
Pembuatan database tanpa relationships seperti membuat database model flat (bukan RDBMS),
sehingga maintenance data akan sulit nantinya. Dan memang salah satu keunggulan Access
karena didalamnya terdapat fasilitas pembuatan relationships yang sangat baik.
Langkah 7 – Check ulang, kemudian coba ringkaskan kembali design database
yang sudah dibuat (jika memungkinkan)
Ketergesa-gesaan adalah perbuatan yang kurang baik, dan terkadang membawa penyesalan
dimasa mendatang. Maka janganlah tergesa-gesa untuk membangun object-object database
lainnya jika Anda belum mencheck ulang design database dari langkah 1 sampai dengan 6.
Lihatlah kembali, apakah memang hanya ini yang Anda butuhkan. Mungkinkah design database
yang sudah dibuat dapat diperingkas lagi? Jika Anda telah yakin, maka teruskan ke langkah
berikutnya.
Langkah 8 – Memasukkan data statis kedalam table
Langkah ini sebenarnya tidak wajib, namun ia akan diperlukan ketika Anda hendak mencoba
menjalankan program pada langkah berikutnya. Anda mungkin ingin melihat langsung hasil
suatu proses ketika menjalankan program tersebut. Oleh karena itu Anda harus menyiapkan serta
mengisi data statis, yaitu data yang sifatnya umum atau biasa disebut juga sebagai data master,
dimana data ini akan digunakan oleh banyak table. Contoh, daftar supplier, daftar barang, daftar
customer, dan lain-lain. Adapun table dinamis seperti table daftar transaksi barang, table absensi
karyawan tidak perlu Anda isi karena memang ia merupakan data bergerak yang senantiasa
berubah dan bertambah. Umumnya data statis ini dapat langsung diimport dari file spreadsheet
ataupun database lainnya, seperti Microsoft Excel, SQL Server, dan lain-lain. Oleh karena itu,
kita dapat menyiapkan suatu file template didalam Excel yang formatnya sama dengan table
master, kemudian kita mengisi seluruh data statis kedalam file Excel tersebut. Setelah selesai,
kita
dapat
langsung
mengimportnya
kedalam
database
Access.
Langkah 9 – Menciptakan object-object database lainnya
Setelah semua langkah diatas dilakukan, barulah kita mulai membuat object-object database
lainnya,
seperti query,
form,
report,
macro,
page, serta module.
Contoh : Rencana Penyusunan Data Siswa
Berikut ini adalah contoh membangun database yang benar yang disampaikan secara tahap demi
tahap. Aplikasi dilakukan pada table rencana penyusunan data siswa sekolah beserta
registrasinya pada tahun ajaran baru. Diharapkan setelah mempelajari contoh ini, pembaca dapat
memahami bagaimana membuat dan menyusun field-field dan table-table didalam suatu database
secara
benar.
1. Table
tidak
normal
(yang
masih
salah):
NoSiswa
Nama Guru
Ruang Guru
Kelas1
Kelas2
Kelas3
1022
Jones
412
101-07
143-01
159-02
4123
Smith
216
201-01
211-02
214-01
2. Table normal yang pertama: Jangan ada field yang mempunyai arti yang sama
yang
dibuat
lebih
dari
satu
field
Lihatlah table yang tidak normal sebagaimana pada no.1 diatas. Didalamnya terdapat fieldfield yang mempunyai arti sama, yaitu Kelas1, Kelas2, dan Kelas3. Field-field ini
semestinya dibuat didalam satu field, kemudian untuk menyatakan kelas diisi didalam
recordnya
secara
langsung.
Lihatlah
table
berikut
ini:
NoSiswa
Nama Guru
Ruang Guru
Kelas
1022
Jones
412
101-07
1022
Jones
412
143-01
1022
Jones
412
159-02
4123
Smith
216
201-01
4123
Smith
216
211-02
4123
Smith
216
214-01
3. Table
normal
yang
kedua:
Hapuskan
data
yang
berlebih-lebihan
Lihatlah table pada no.2 diatas. Kendatipun Kelas sudah dijadikan satu field, didalamnya
masih terdapat penulisan data yang diulang-ulang, yaitu penulisan NoSiswa, Nama
Guru dan Ruang Guruuntuk masing-masing Kelas. Hal ini sangat tidak efisien, karena user
akan lebih banyak menginput data. Dan table ini lebih sulit untuk dibuat primary key nya,
karena untuk menambahkan primary key pada table seperti ini harus menggunakan multiple
primary key, sehingga hal ini tidak efisien. Maka cara yang lebih tepat adalah pisahkan datadata didalam table ini menjadi dua table, table yang satu menyimpan data master siswa
(table Master Siswa), table yang lain menyimpan data registrasi siswa (table Registrasi
Siswa). Kedua table ini akan dihubungkan dengan relationships. Pembuatan table seperti ini
disebut
juga
model Master-Detail.
Lihatlah
table-table
berikut
ini:
Table
Master
Siswa:
NoSiswa
Nama Guru
Ruang Guru
1022
Jones
412
4123
Smith
216
NoSiswa
pada
table
ini
merupakan
primary
key.
Table
Registrasi
Siswa:
NoSiswa
Kelas
1022
101-07
1022
143-01
1022
159-02
4123
201-01
4123
211-02
4123
214-01
NoSiswa
pada
table
ini
merupakan
foreign
key.
4. Table normal yang ketiga: Pisahkan data yang tidak bergantung dengan suatu
kunci
Pada table Master Siswa diatas terdapat field Nama Guru dan Ruang Guru yang
penulisannya disatukan dengan data siswa. Sebaiknya data guru ini dipisahkan didalam table
tersendiri, karena nama guru merupakan field yang datanya dapat diisi secara berulang kali,
oleh karena itu harus dibuat kunci (primary key) pada field Nama Guru ini. Pisahkanlah data
ini secara khusus, misalnya pada TableMaster Guru. Dengan demikian, didalam database ini
sekarang memiliki tiga table, yaitu tableMaster Siswa, table Registrasi Siswa dan
table Master Guru. Ketiga table ini harus dihubungkan dengan relationships. Lihatlah tabletable
berikut
ini:
Table
Master
NoSiswa
Nama Guru
1022
Jones
4123
Smith
NoSiswa
pada
table
ini
Table
Siswa:
merupakan
Registrasi
Kelas
1022
101-07
1022
143-01
1022
159-02
4123
201-01
4123
211-02
4123
214-01
pada
table
ini
Table
merupakan
foreign
Master
Ruang Guru
Jones
412
Smith
216
Guru
pada
table
ini
key.
Guru:
Nama Guru
Nama
key.
Siswa:
NoSiswa
NoSiswa
primary
merupakan
primary
key.
Demikianlah beberapa tahapan dalam menyusun database yang benar yang dilakukan diawal
pembuatan database. Sebab bila Anda merombak ulang database setelah database tersebut selesai
dibuat, hal tersebut membutuhkan banyak waktu, dan terkadang mengalami kendala yang bisa
mengakibatkan program database tidak berjalan dengan baik dan benar.
Posted on 13/03/2012by Sofyan Efendi
Pembuatan (design) database yang baik memudahkan kita untuk memelihara dan mengupgrade
(suatu saat nanti) menjadi system database yang lebih kompleks. Dengan sistem database yang
benar, Anda tidak perlu merubah nomor telepon supplier didalam tiga tempat, tapi cukup didalam
data pusatnya. Membangun database yang benar pada awal pembuatan merupakan langkah awal
agar database Anda mudah digunakan dan dimodifikasi pada masa-masa berikutnya.
Terdapat
beberapa
langkah
dalam
membangun
1. Tentukan
tujuan
2. Tentukan
table-table
3. Tentukan
4. Tentukan
field-field
table
yang
yang
database
yang
baik,
pembuatan
akan
database.
yang
dibutuhkan
didalam
digunakan
yaitu:
diperlukan.
masing-masing
secara
table.
bersama-sama.
5. Identifikasi field-field yang akan menjadi kunci, baik primary key maupun foreign key.
6. Tentukan
relationships
antara
masing-masing
table.
7. Check ulang, kemudian coba ringkaskan kembali design database yang sudah dibuat (jika
memungkinkan).
8. Memasukkan
9. Menciptakan
data
object-object
statis
kedalam
database
table.
lainnya.
Langkah 1 – Tentukan tujuan pembuatan database
Inilah
langkah
-
Hendak
-
Apa
-
Siapa
dasar
digunakan
tujuan
saja
yang
harus
untuk
apa
pembuatan
user
atau
pengguna
Anda
database
database
database
tentukan:
Anda?
ini?
Anda?
Dengan memahami langkah ini, maka salah satu pondasi dasar database telah selesai Anda buat.
Dengan demikian, kita tinggal memikirkan apa saja yang kita butuhkan untuk membangun
database
ini.
Langkah 2 – Tentukan table-table yang diperlukan
Sebagaimana membuat bangunan rumah, setelah selesai membuat sketsa, tentulah menentukan
bahan bangunan apa saja yang dibutuhkan untuk mewujudkan sketsa tersebut menjadi bangunan
jadi yang diinginkan. Pada database, bahan dasar untuk membangun database adalah table.
Bertanyalah kepada user (pengguna) yang hendak menggunakan database Anda, apa yang
sebenarnya mereka kehendaki dari database yang akan Anda buat. Uraikan secara detail output
atau laporan yang akan mereka butuhkan didalam database yang akan Anda buat. Kumpulkan
sketsa dan format apa saja yang mereka kehendaki. Buatlah sketsa database menggunakan pensil
atau ballpoint didalam kertas kosong, dimana didalam sketsa ini memperlihatkan table-table
yang
kira-kira
akan
diperlukan
nantinya.
Gambar contoh Sketsa Database yang saya buat diatas kertas HVS
Semakin banyak daftar informasi yang telah Anda terima dari mereka (user) akan memudahkan
perancangan awal pembuatan database. Maka disinilah akan muncul berbagai ide didalam
pikiran dan hati Anda. Apa yang harus Anda lakukan, apa saja yang Anda butuhkan, dan lainlain. Dengan demikian Anda akan memahami table dan field apa saja yang dibutuhkan untuk
membangun
database
tersebut.
Langkah 3 – Tentukan field-field yang dibutuhkan didalam masing-masing table
Masing-masing table mempunyai field-field yang harus Anda tentukan. Sebagai contoh, Anda
telah menentukan table Daftar Supplier, tentu saja didalam table ini harus memuat data-data
seperti: Nomor Supplier, Nama Supplier, Alamat Supplier, Nomor Telepon Supplier, dan lainlain. Maka disinilah field-field tersebut dibuat, dan janganlah terburu-buru menyelesaikan
langkah ini. Pikirkanlah kembali, benarkah hanya field-field tersebut yang Anda butuhkan.
Sebab, membuat field susulan kadangkala akan merepotkan nantinya, dan bisa jadi akan
memodifikasi sebagian besar database Anda, jika memang field tersebut dibutuhkan oleh hampir
sebagian
besar
object
didalam
database
Anda.
Janganlah ada suatu field yang merupakan hasil perhitungan dari field-field lainnya didalam
table. Misalnya saja, didalam table Daftar Pesanan terdapat field Quantity dan field Harga, maka
janganlah menambahkan field Total Harga didalam table ini, karena kita bisa menggunakan
object
query
untuk
melakukan
ini,
tidak
perlu
didalam
table.
Jangan pula menambahkan field-field yang sifatnya daftar suatu materi didalam table utama.
Contoh, Anda menambahkan field daftar produk yang Anda pesan dari supplier didalam table
Daftar Supplier yaitu field Produk1, field Produk2, dan field Produk3. Ini akan sangat
merepotkan ketika kita hendak mencari supplier apa saja yang mempunyai produk tertentu, dan
yang lebih merepotkan adalah seandainya terdapat supplier yang daftar produknya lebih dari
tiga, maka Anda harus menambahkan field tambahan didalam table Daftar Supplier. Cara yang
benar adalah cukup daftar produk ini disimpan didalam table Master Barang, kemudian
tambahkan
disana
Nomor
Supplier-nya.
Jangan pula menambahkan field-field statis yang sama didalam beberapa table yang berbeda.
Contoh, jika Anda telah membuat field Nama Supplier didalam table Supplier, maka Anda tidak
perlu menambahkan field Nama Supplier didalam table Order, karena Nama Supplier ini bisa
diambil dengan menggunakan object query. Namun jika field tersebut dinamis yang sifatnya bisa
berubah, misalnya saja Harga Barang, maka Anda boleh menambahkan field Harga Barang ini
didalam
table
Order
dan
table
Master
Barang.
Langkah 4 – Tentukan table yang akan digunakan secara bersama-sama
Sebagaimana kita tidak perlu membuat field statis yang sama didalam beberapa table, jangan
juga kita membuat table statis yang sama didalam suatu database. Jadi Anda tidak perlu membuat
table Master Barang khusus untuk supplier A, sedangkan untuk supplier B Anda membuat table
Master Barang yang lain. Seandainya akan dibuat form atau report dari data tersebut, maka Anda
akan bekerja dua kali, dan ini akan lebih memakan waktu. Dan yang lebih merepotkan lagi
adalah seandainya terjadi perubahan design table didalam table yang satu, maka table lainnya
harus
dirubah
juga.
Table-table statis yang akan digunakan secara bersama-sama umumnya merupakan data master,
dengan demikian seandainya terjadi perubahan data didalam table master, maka secara otomatis
pada table-table lainnya akan ikut berubah. Inilah salah satu keunggulan database Access,
bekerja secara sistematis serta mengupdate data kedalam semua table yang berhubungan.
Langkah 5 – Identifikasi field-field yang akan menjadi kunci
Setelah membuat table, tentukanlah field-field yang akan menjadi kunci (primary key dan
foreign key). Primary key berguna agar data didalam table tidak duplikat atau double, sedangkan
foreign key berguna untuk menghubungkan field primary key didalam table master ke suatu field
pada table detail. Tambahkan pula index kedalam beberapa field yang ditentukan, baik index
jenis
Duplicate
OK
ataupun
No
Duplicate.
Field kunci, baik primary key maupun foreign key serta index harus ditentukan sejak awal,
dengan demikian design database pada langkah berikutnya akan mudah. Khusus untuk primary
key jenis number, sebaiknya menggunakan type AutoNumber (Long Integer) agar user tidak
perlu
menginput
lagi.
Langkah 6 – Tentukan relationships antara masing-masing table
Setelah Anda membuat field kunci, maka hubungkanlah kunci-kunci ini dengan suatu hubungan
yang Anda tentukan, yaitu melalui relationships yang telah disediakan oleh Access (pelajari
kembali relationships yang sudah penulis jelaskan pada pelajaran sebelumnya). Ingat!
Pembuatan database tanpa relationships seperti membuat database model flat (bukan RDBMS),
sehingga maintenance data akan sulit nantinya. Dan memang salah satu keunggulan Access
karena didalamnya terdapat fasilitas pembuatan relationships yang sangat baik.
Langkah 7 – Check ulang, kemudian coba ringkaskan kembali design database
yang sudah dibuat (jika memungkinkan)
Ketergesa-gesaan adalah perbuatan yang kurang baik, dan terkadang membawa penyesalan
dimasa mendatang. Maka janganlah tergesa-gesa untuk membangun object-object database
lainnya jika Anda belum mencheck ulang design database dari langkah 1 sampai dengan 6.
Lihatlah kembali, apakah memang hanya ini yang Anda butuhkan. Mungkinkah design database
yang sudah dibuat dapat diperingkas lagi? Jika Anda telah yakin, maka teruskan ke langkah
berikutnya.
Langkah 8 – Memasukkan data statis kedalam table
Langkah ini sebenarnya tidak wajib, namun ia akan diperlukan ketika Anda hendak mencoba
menjalankan program pada langkah berikutnya. Anda mungkin ingin melihat langsung hasil
suatu proses ketika menjalankan program tersebut. Oleh karena itu Anda harus menyiapkan serta
mengisi data statis, yaitu data yang sifatnya umum atau biasa disebut juga sebagai data master,
dimana data ini akan digunakan oleh banyak table. Contoh, daftar supplier, daftar barang, daftar
customer, dan lain-lain. Adapun table dinamis seperti table daftar transaksi barang, table absensi
karyawan tidak perlu Anda isi karena memang ia merupakan data bergerak yang senantiasa
berubah dan bertambah. Umumnya data statis ini dapat langsung diimport dari file spreadsheet
ataupun database lainnya, seperti Microsoft Excel, SQL Server, dan lain-lain. Oleh karena itu,
kita dapat menyiapkan suatu file template didalam Excel yang formatnya sama dengan table
master, kemudian kita mengisi seluruh data statis kedalam file Excel tersebut. Setelah selesai,
kita
dapat
langsung
mengimportnya
kedalam
database
Access.
Langkah 9 – Menciptakan object-object database lainnya
Setelah semua langkah diatas dilakukan, barulah kita mulai membuat object-object database
lainnya,
seperti query,
form,
report,
macro,
page, serta module.
Contoh : Rencana Penyusunan Data Siswa
Berikut ini adalah contoh membangun database yang benar yang disampaikan secara tahap demi
tahap. Aplikasi dilakukan pada table rencana penyusunan data siswa sekolah beserta
registrasinya pada tahun ajaran baru. Diharapkan setelah mempelajari contoh ini, pembaca dapat
memahami bagaimana membuat dan menyusun field-field dan table-table didalam suatu database
secara
benar.
1. Table
tidak
normal
(yang
masih
salah):
NoSiswa
Nama Guru
Ruang Guru
Kelas1
Kelas2
Kelas3
1022
Jones
412
101-07
143-01
159-02
4123
Smith
216
201-01
211-02
214-01
2. Table normal yang pertama: Jangan ada field yang mempunyai arti yang sama
yang
dibuat
lebih
dari
satu
field
Lihatlah table yang tidak normal sebagaimana pada no.1 diatas. Didalamnya terdapat fieldfield yang mempunyai arti sama, yaitu Kelas1, Kelas2, dan Kelas3. Field-field ini
semestinya dibuat didalam satu field, kemudian untuk menyatakan kelas diisi didalam
recordnya
secara
langsung.
Lihatlah
table
berikut
ini:
NoSiswa
Nama Guru
Ruang Guru
Kelas
1022
Jones
412
101-07
1022
Jones
412
143-01
1022
Jones
412
159-02
4123
Smith
216
201-01
4123
Smith
216
211-02
4123
Smith
216
214-01
3. Table
normal
yang
kedua:
Hapuskan
data
yang
berlebih-lebihan
Lihatlah table pada no.2 diatas. Kendatipun Kelas sudah dijadikan satu field, didalamnya
masih terdapat penulisan data yang diulang-ulang, yaitu penulisan NoSiswa, Nama
Guru dan Ruang Guruuntuk masing-masing Kelas. Hal ini sangat tidak efisien, karena user
akan lebih banyak menginput data. Dan table ini lebih sulit untuk dibuat primary key nya,
karena untuk menambahkan primary key pada table seperti ini harus menggunakan multiple
primary key, sehingga hal ini tidak efisien. Maka cara yang lebih tepat adalah pisahkan datadata didalam table ini menjadi dua table, table yang satu menyimpan data master siswa
(table Master Siswa), table yang lain menyimpan data registrasi siswa (table Registrasi
Siswa). Kedua table ini akan dihubungkan dengan relationships. Pembuatan table seperti ini
disebut
juga
model Master-Detail.
Lihatlah
table-table
berikut
ini:
Table
Master
Siswa:
NoSiswa
Nama Guru
Ruang Guru
1022
Jones
412
4123
Smith
216
NoSiswa
pada
table
ini
merupakan
primary
key.
Table
Registrasi
Siswa:
NoSiswa
Kelas
1022
101-07
1022
143-01
1022
159-02
4123
201-01
4123
211-02
4123
214-01
NoSiswa
pada
table
ini
merupakan
foreign
key.
4. Table normal yang ketiga: Pisahkan data yang tidak bergantung dengan suatu
kunci
Pada table Master Siswa diatas terdapat field Nama Guru dan Ruang Guru yang
penulisannya disatukan dengan data siswa. Sebaiknya data guru ini dipisahkan didalam table
tersendiri, karena nama guru merupakan field yang datanya dapat diisi secara berulang kali,
oleh karena itu harus dibuat kunci (primary key) pada field Nama Guru ini. Pisahkanlah data
ini secara khusus, misalnya pada TableMaster Guru. Dengan demikian, didalam database ini
sekarang memiliki tiga table, yaitu tableMaster Siswa, table Registrasi Siswa dan
table Master Guru. Ketiga table ini harus dihubungkan dengan relationships. Lihatlah tabletable
berikut
ini:
Table
Master
NoSiswa
Nama Guru
1022
Jones
4123
Smith
NoSiswa
pada
table
ini
Table
Siswa:
merupakan
Registrasi
Kelas
1022
101-07
1022
143-01
1022
159-02
4123
201-01
4123
211-02
4123
214-01
pada
table
ini
Table
merupakan
foreign
Master
Ruang Guru
Jones
412
Smith
216
Guru
pada
table
ini
key.
Guru:
Nama Guru
Nama
key.
Siswa:
NoSiswa
NoSiswa
primary
merupakan
primary
key.
Demikianlah beberapa tahapan dalam menyusun database yang benar yang dilakukan diawal
pembuatan database. Sebab bila Anda merombak ulang database setelah database tersebut selesai
dibuat, hal tersebut membutuhkan banyak waktu, dan terkadang mengalami kendala yang bisa
mengakibatkan program database tidak berjalan dengan baik dan benar.