Perancangan model konseptual basis data dalam sebuah organisasi menjadi tugas dari Administrator basis data. Model konseptual merupakan kombinasi beberapa cara untuk memproses data untuk beberapa aplikasi. Model konseptual tidak tergantung pada aplikasi individual, DBMS digunakan, Hardware komputer dan model fisiknya.
Pada perancangan model konseptual basis data ini penekanan dilakukan pada struktur data dan relasi antara file. Pada perancangan model konseptual ini dapat dilakukan dengan menggunakan model data relasional.
Teknik Model Data Realsional ada 2 yaitu :
· Teknik Normalisasi
· Teknik Entity Relationship
1. Teknik Normalisasi
Proses normalisasi adalah proses pengelompokan data elemen menjadi tabel-tabel yang menunjukkan entity dan relasinya. Pada proses normalisasi dilakukan pengujian pada beberapa kondisi apakah ada kesulitan pada saatmenambah/menyisipkan, menghapus, mengubah dan mengakses pada suatu
basis data. Bila terdapat kesulitan pada pengujian tersebut maka perlu dipecahkan relasi pada beberapa tabel lagi atau dengan kata lain perancangan basis data belum optimal.
Field (Atribut) Kunci
setiap file selalu terdapat kunci dari file berupa field atau satu set field yang dapat mewakili record. Misalnya Nomor Pokok Mahasiswa (NPM) merupakan kunci dari tabel mahasiswa suatu Perguruan Tinggi, setiap pencarian cukup dengan menyebut nomor mahasiswa tersebut maka dapat diketahui identitas mahasiswa lainnya seperti nama, alamat dan atribut lainnya.
Nomor Pegawai (NIP) bagi data dosen, NIK untuk data karyawan, Kode_Kuliah untuk data Mata kuliah, dan lain sebagainya.
Jenis Atribut Pada Entitas
Atribut yang melekat pada suatu entitas ada bermacam tipe seperti yang akan
dijelaskan sebagai berikut :
Atribut Sederhana
Atribut sederhana merupakan atribut atomik yang tidak dapat lagi dipecah menjadi atribut lain. Contoh Entitas mahasiswa mempunyai atribut sederhana berupa NIM, Nama Mahasiswa .
Atribut Komposit
atribut komposit merupakan atribut yang masih dapat dipecah menjadi sub-sub atribut yang masing-masing memiliki arti tesendiri.
Contoh : entitas mahasiswa mempunyai atribut alamat. Alamat disini dapat
dipecah menjadi sub atribut seperti nama_kota, kode_pos.
Atribut Bernilai Tunggal:
yaitu atribut yang hanya memiliki satu nilai untuk setiap barisnya. Contoh : entitas mahasiswa mempunyai atribut NPM, Nama, Alamat isi data dari atribut ini hanya boleh diisi dengan 1 data. Setiap mahasiswa hanya memiliki 1 NPM, 1 Nama, 1 Alamat.
Atribut Bernilai Jamak
yaitu atribut yang boleh memiliki lebih dari satu nilai untuk setiap barisnya.
Contoh : entitas mahasiswa mempunyai atribut Hobby isi data dari atribut ini
boleh lebih dari 1 data. Mahasiswa Roshita memiliki NPM 13402021
beralamat di Jalan Garuda 32 Yogyakarta memiliki Hobby (Olah Raga,
Nyanyi, Masak dan Nonton TV)
Atribut Harus Bernilai
yaitu atribut yang harus memiliki nilai data untuk setiap barisnya. Biasanya atribut seperti ini sudah ditetapkan dalam perancangan tabelnya sehingga jika dalam pengisian dokosongi akan terjadi kesalahan.
Contoh : entitas mahasiswa mempunyai atribut NPM dan Nama_Mahasiswa
yang harus diisi datanya, sebab jika tidak diisi akan terjadi kekacauan dalam
basis data.
Atribut Bernilai Null
yaitu atribut yang boleh tidak memiliki nilai data untuk setiap barisnya.
Contoh : entitas mahasiswa mempunyai atribut Alamat, Hobby, Nama_Pacar
yang boleh untuk tidak diisi tetapi kalau diisi akan lebih baik,
Atribut Turunan: yaitu atribut yang nilai-nilainya diperoleh dari pengolahan
atau dapat diturunkan dari atribut lain yang berkaitan.
Contoh : entitas mahasiswa mempunyai atribut IPK yang diperoleh dari pengolahan atribut Nilai pada tabel (entitas Nilai) dengan kode NIM mahasiswa yang sama dan diproses sehingga menghasilkan IPK untuk mahasiswa yang bersangkutan..
Kunci Kandidat (Candidate Key)
Kunci kandidat adalah satu atribut atau satu set atribut yang mengidentifikasikan secara unik suatu kejadian spesifik dari entity. Satu set atribut menyatakan secara tidak langsung dimana anda tidak dapat membuang beberapa atribut dalam set tanpa merusak kepemilikan yang unik.
Jika kunci kandidat berisi lebih dari satu atribut, maka biasanya disebut sebagai composite key (kunci campuran atau gabungan).
Contoh :
File mahasiswa berisi :
· Nomor Pegawai
· No KTP
· Nama Pegawai
· Tempat Lahir
· Tanggal Lahir
· Alamat
· Kota
Kunci kandidat dalam file mahasiswa di atas dapat dipilih sbb :
· Nomor Pegawai
· No KTP
· Nama (tidak dapat dipakai karena sering seseorang punya nama yang
sama dengan orang lain)
· Nama + Tanggal Lahir (mungkin bisa dipakai sebagai kunci karena
kemungkinan orang dengan nama yang sama dan tanggal lahir yang
sama cukup kecil)
· Nama + Tempat Lahir + Tanggal Lahir (dapat dipakai sebagai kunci)
· Alamat dan Kota (bukan kunci)
Kunci Primer (Primery Key)
Primary key adalah satu atribut atau satu set minimal atribut yang tidak hanya
mengidentifikasi secara unik suatu kekadian spesifik, tetapi juga dapat mewakili setiap kejadian dari suatu entity.
Setiap kunci kandidat dapat menjadi kunci primer tetapi sebaliknya sebaiknya
dipilih satu saja yang dapat mewakili secara menyeluruh terhadap entity yang
ada.
Contoh :
· No Pegawai (karena sifatnya yang unik maka tidak mungkin pegawai
mempunyai Nomor Pegawai yang sama).
· No KTP (Bisa dipakai misalnya untuk pegawai yang baru belum
mendapatkan nomor pegawai maka bisa digunakan nomor KTP untuk
sementara sebagai kunci primer.
· Kode_Kuliah (bisa dipakai untuk data mata kuliah karena kode mata
kuliah bersifat unik untuk tiap mata kuliah)
Kunci Alternatif (Alternate Key)
Kunci alternatif adalah kunci kandidat yang tidak dipakai sebagai kunci primer.
Kunci alternatif ini sering digunakan untuk kunci pengurutan misalnya dalam
laporan.
Kunci Tamu (Foreign Key)
Kunci tamu adalah satu atribut aatau satu set minimal atribut yang melengkapi satu hubungan yang menunjukkan ke induknya. kunci tamu ditempatkan pada entity anak dan sama dengan kunci primer induk yang direlasikan. Hubungan antara entity induk dengan anak adalah hubungan satu lawan banyak (one to many relationship)
Contoh :
File Transaksi Gaji Bulanan
· No Pegawai
· No Bukti
· Tanggal
· Jumlah Gaji Kotor
· Jumlah Potongan
· Jumlah Gaji Bersih
· Jumlah Pajak
· Kunci Tamu
· No Pegawai (karena Gaji berhubungan dengan file Pegawai)
· Kunci Primer
· No Bukti (karena unik dan mewakili entity)
· Kunci Kandidat
· No Pegawai + Nomor Bukti (Unik dan menunjukkan hubungan dengan
· file Pegawai)
Dalam hubungan dua buah file yang punya relationship banyak lawan banyak
maka terdapat 2 kunci tamu pada file konektornya.
Contoh :
File Proyek berisi atribut
· No Proyek
· Tgl Mulai
· Tgl Selesai
· Anggaran
File Pegawai Berisi Atribut
· No Pegawai
· Nama
Hubungan antara file tersebut adalah banyak lawan banyak yaitu satu
pegawai mengerjakan lebih dari 1 proyek dan 1 proyek dikerjakan oleh
beberapa pegawai maka untuk menunjukkan hubungan tersebut dipakai file
konektor yang berisi kunci tamu dari kedua file.
File Proyek Pegawai berisi atribut :
· No Proyek
· No Pegawai
· Jam Kerja
Maka pada file proyek pegawai terdapat kunci tamu yaitu nomor proyek dan
no pegawai. Kedua atribut tersebut juga merupakan kunci primer.