PENGERTIAN TABEL ,PRIMERY KEY,DAN ERD
1. Tabel
Tabel adalah sekumpulan data spesifik tentang subjek tertentu yang disusun sedemikian rupa dalam bentuk kolom (field) dan baris (record). Kolom berisi judul yang mewakili sekumpulan baris. Sedangkan baris (record) berisi kumpulan data yang memiliki karakteristik pengertian yang sama. Jadi satu record mewakili satu data atau informasi tentang suatu entitas subjek secar lengkap. Misalnya record informasi tentang nama barang, maka akan berisi dengan type data adalah Text dll.
Tabel adalah sekumpulan data spesifik tentang subjek tertentu yang disusun sedemikian rupa dalam bentuk kolom (field) dan baris (record). Kolom berisi judul yang mewakili sekumpulan baris. Sedangkan baris (record) berisi kumpulan data yang memiliki karakteristik pengertian yang sama. Jadi satu record mewakili satu data atau informasi tentang suatu entitas subjek secar lengkap. Misalnya record informasi tentang nama barang, maka akan berisi dengan type data adalah Text dll.
Dalam arsitektur tiga-skema, deskripsi model konseptual tidak hanya terpisah dengan SMBD yang digunakan, tetapi juga harus terpisah dengan penggunaan sistem komputer. Oleh karena itu, dalam model konsepsual lebih baik dihindarkan adanya peristilahan yang berkonotasi dengan sistem komputer (skema internal), misal istilah berkas (file) dan rekaman (record).
Model konsepsual harus memandang data dengan logika yang paling sederhana. Cara ini ditempuh dengan membuat blok data dasar untuk mengorganisasi kelompok data. Blok data dasar yang paling umum digunakan dalam sistem basis data adalah tabel (table) atau disebut juga relasi (relation). Dalam hal ini, untuk pembicaraan selanjutnya digunakan istilah tabel.
Model konsepsual harus memandang data dengan logika yang paling sederhana. Cara ini ditempuh dengan membuat blok data dasar untuk mengorganisasi kelompok data. Blok data dasar yang paling umum digunakan dalam sistem basis data adalah tabel (table) atau disebut juga relasi (relation). Dalam hal ini, untuk pembicaraan selanjutnya digunakan istilah tabel.
Penggunaan tabel bertujuan untuk menyederhanakan logika pandangan terhadap data. Oleh karena itu dibuat beberapa ketentuan dalam penyusunan tabel sebagai berikut:
• Urutan baris tidak diperhatikan, sehingga pertukaran baris tidak akan berpengaruh terhadap isi informasi pada tabel.
• Urutan kolom tidak diperhatikan. Identifikasi kolom dibedakan dengan jenis atribut.
• Tiap perpotongan baris dan kolom hanya berisi nilai atribut tunggal, sehingga nilai atribut ganda tidak diperbolehkan.
• Tiap baris dalam tabel harus dibedakan, sehingga tidak mungkin ada dua beris dalam tabel mempunyai nilai atribut yang sama secara keseluruhan.
model konsepsual dalam penyusunan basis data tidak hanya terdiri atas satu tabel, melainkan banyak tabel dalam satu kesatuan pandangan data. Kelompok tabel yang memenuhi ketentua tabel normal disebut tabel normal penuh (fully normalised tables).
Bentuk-bentuk tabel normal
Proses normalisasi tabel secara umum dibagi menjadi lima tahap, sehingga dikenal bentuk-bentuk tabel normal sesuai dengan tahapan normalisasi yang telah dilakukan, yaitu bentuk normal pertama, kedua, ketiga, keempat, dan kelima.
Bentuk normal pertama dicapai bila tiap nilai atribut adalah tunggal. Kondisi ini dapat diperoleh dengan melakukan eliminasi terjadinya data ganda (repeating groups). Pada kondisi normal pertama ini kemungkinan masih terjadi adanya data rangkap.
Bentuk normal kedua dicapai bila atribut yang dijadikan identitas benar-benar sebagai determinan dari semua atribut. Bentuk normal kedua diperoleh dengan bantuan diagram determinansi atau manipulasi data tabel pada kondisi bentuk normal pertama
Bentuk normal ketiga adalah bentuk normal kedua tanpa terjadi adanya ketergantungan transitif (transitif determinan). Kondisi ini sama dengan tabel normal Boyce/Codd, namun masih diperlukan pemilihan identitas tunggal bila terdapat beberapa kandidat untuk dijadikan identitas.
Bentuk normal keempat adalah tabel bentuk normal ketiga dengan nilai atribut tidak tergantung pada banyak nilai (multi-value determiancies). Sedangkan bentuk normal kelima berhubungan dengan apa yang disebut ketergantungan pada gabungan beberapa atribut (join dependency). Kasus ini dalam praktek jarang ditemukan, sebab secara nyata akan disusun suatu tabel dengan atribut-atribut yang ditentukan dengan satu identitas.
Proses normalisasi tabel secara umum dibagi menjadi lima tahap, sehingga dikenal bentuk-bentuk tabel normal sesuai dengan tahapan normalisasi yang telah dilakukan, yaitu bentuk normal pertama, kedua, ketiga, keempat, dan kelima.
Bentuk normal pertama dicapai bila tiap nilai atribut adalah tunggal. Kondisi ini dapat diperoleh dengan melakukan eliminasi terjadinya data ganda (repeating groups). Pada kondisi normal pertama ini kemungkinan masih terjadi adanya data rangkap.
Bentuk normal kedua dicapai bila atribut yang dijadikan identitas benar-benar sebagai determinan dari semua atribut. Bentuk normal kedua diperoleh dengan bantuan diagram determinansi atau manipulasi data tabel pada kondisi bentuk normal pertama
Bentuk normal ketiga adalah bentuk normal kedua tanpa terjadi adanya ketergantungan transitif (transitif determinan). Kondisi ini sama dengan tabel normal Boyce/Codd, namun masih diperlukan pemilihan identitas tunggal bila terdapat beberapa kandidat untuk dijadikan identitas.
Bentuk normal keempat adalah tabel bentuk normal ketiga dengan nilai atribut tidak tergantung pada banyak nilai (multi-value determiancies). Sedangkan bentuk normal kelima berhubungan dengan apa yang disebut ketergantungan pada gabungan beberapa atribut (join dependency). Kasus ini dalam praktek jarang ditemukan, sebab secara nyata akan disusun suatu tabel dengan atribut-atribut yang ditentukan dengan satu identitas.
Proses Normalisasi Tabel
Basis data tidak hanya terdiri atas satu tabel saja, melainkan banyak tabel. Gabungan tabel-tabel dalam basis data disusun sesuai ketentuan penyusunan tabel (tabel normal) dan antartabel saling berhubungan serta terbebas dari adanya data rangkap. Kondisi tabel demikian dikatakan sebagai tabel normal penuh.
Proses pembentukan tabel normal penuh (normalisasi) bertujuan untuk:
• Membuat sekecil mungkin terjadinya data rangkap
• Menghindarkan adanya data yang tidak konsisten terutama bila dilakukan penghapusan atau penambahan data sebagai akibat adanya data rangkap
• Menjamin bahwa identitas tabel secara tunggal sebagai determinan semua atribut.
Basis data tidak hanya terdiri atas satu tabel saja, melainkan banyak tabel. Gabungan tabel-tabel dalam basis data disusun sesuai ketentuan penyusunan tabel (tabel normal) dan antartabel saling berhubungan serta terbebas dari adanya data rangkap. Kondisi tabel demikian dikatakan sebagai tabel normal penuh.
Proses pembentukan tabel normal penuh (normalisasi) bertujuan untuk:
• Membuat sekecil mungkin terjadinya data rangkap
• Menghindarkan adanya data yang tidak konsisten terutama bila dilakukan penghapusan atau penambahan data sebagai akibat adanya data rangkap
• Menjamin bahwa identitas tabel secara tunggal sebagai determinan semua atribut.
Oleh karena itu,kita juga harus bisa mengetahui apa itu primery key,karena primerykey sangat diperlukan dalam pembuatan tabel data base,seelum kita mssuk di pembahasan primery key,alangkah baiknya kita mengenal terlebih dahulu apa itu KEY..??
KEY merupakan elemen record yang dipakai untuk menemukan record tersebut pada waktu akses atau bisa digunakan untuk identifikasi tiap record.
Jenis-jenis kunci :
v Superkey
v Candidat key
v Primary key
v Alternate key
v Foreign key
v External key
Dalam database (mysql) dikenal beberapa istilah yaitu primary key, foreign key, unique dan index. Menurut Om Wiki, Primary Key atau Unique Key merupakan kunci yang secara unik mengidentifikasi baris pada tabel. Primary Key atau Unique Key dapat diterapkan pada satu atau lebih field. Apabila primary key / unique key diterapkan pada satu atau lebih field maka pada field tersebut tidak boleh bernilai sama untuk seluruh baris pada tabel. Kemudian yang membedakan primary key dan unique key adalah setiap kita memberikan constraint primary key pada field maka constraint NOT NULL akan diberikan pada field tersebut secara otomatis, sedangkan pada unique key tidak.Selain kedua istilah diatas, terdapat juga istilah foreign key. Dengan adanya foreign key dapat terlihat adanya hubungan antara satu tabel dengan tabel lain. Foreign key mengidentifikasi satu atau lebih kolom pada satu tabel (tabel referensi) mengarah dari satu atau lebih tabel lainnya (tabel induk). Dengan adanya constraint foreign key pada satu kolom maka data pada kolom tabel referensi harus terdapat pada tabel induk. Pada mysql 5.0, foreign key hanya dapat diterapkan pada tabel dengan type InnoDB namun pada versi selanjutnya dapat diterapkan juga pada MyIsam. Kemudian field dengan tipe BLOB atau TEXT tidak dapat diberikan contraint foreign key.Untuk mengoptimasi database kita dapat menggunakan index, karena index mampu meningkatkan kecepatan operasi pada suatu tabel (terutama operasi SELECT). Pada mysql, index dan data dari suatu tabel tersimpan secara terpisah, dengan kata lain membutuhkan ruang penyimpanan yang lebih banyak, kesalahan pemberian index pada suatu kolom dapat memperlambat operasi pada suatu tabel, karena index dibaca terlebih dahulu untuk mendapatkan data. Gunakan foreign key pada kolom yang sering digunakan untuk pencarian data,Primary Key adalah atribut (field) yang dipilih untuk menentukan struktur storage pada organisasi file multi key, adapun key lainnya disebut dengan secondary key. Pengertian lainya Primary Key adalah suatu nilai dalam basis data yang digunakan untuk mengidentifikasi suatu baris dalam tabel. Nilai dari primary key adalah unik. pengertian lain “Primary Key” adalah field kunci / utama dari suatu tabel yang menunjukkan bahwa field yang menjadi kunci tersebut tidak bisa diisi dengan data yang sama, / dengan kata lain Primary key menjadikan tiap record memiliki identitas sendiri-sendiri yang membedakan satu sama lainnya (unik).Primary Key berguna pada saat menampilkan record hasil pencarian (searching), pengurutan (sorting), dan berbagai operasi query lainnya. Dengan memilih rimary key, proses pencarian, pengurutan dan proses penampilan data dan lainnya berlangsung lebih cepat.“Foreign key” adalah satu attribute yang melengkapi satu relationship yang menunjukan ke induknya.
b. Satu tabel tidak boleh memiliki lebih dari satu primary key, karena primary key merupan variable data yang menjadi identitas utama dari tabel tersebut
Primary key :Salah satu atrribut dari candidat key dapat dipilih menjadi primary key dengan 3 kriteria sbb :
- Key tersebut lebih natural untuk dijadikan acuan
- Key tersebut lebih sederhana
- Key tersebut cukup uniqe
Foreign Key adalah Sebuah kumpulan field dalam satu relasi yang digunakan untuk me“refer” (menunjuk) ke suatu baris (tuple) pada relasi yang lain (harus berkorespondensi dengan primary key pada relasi yang kedua), seperti: ‘logical pointer’. Sedangkan hubungan antara keduanya (primary key dan foreign key) di jelaskan sebagai berikut,“Primary Key” adalah field kunci / utama dari suatu tabel yang menunjukkan bahwa field yang menjadi kunci tersebut tidak bisa diisi dengan data yang sama, atau dengan kata lain Primary key menjadikan tiap record memiliki identitas sendiri-sendiri yang membedakan satu sama lainnya (unik).“Foreign key” adalah satu attribute yang melengkapi satu relationship yang menunjukan ke induknya, dengan kata lain keduanya saling berkaitan. pengertian lain ;
Foreign key : merupakan sembarang atribut yang menunjuk kepada primary key pada tabel lain.
- Akan terjadi pada suatu relasi yang memiliki kardinalitas one to many atau many to many
Didalam pembuatan tabel kita melakukan ERD( ENTITY RELATIONSHIP DIAGRAM) untuk meralasikan antara tabel yang satu dengan tabel lainnya,olehkarena itu ERD dapat di artikan sebagai Hubungan (Relation) ERD (entity relationship diagram)
Entity Relationship Diagram (ERD) adalah menyediakan cara untuk mendeskripsikan perancangan basis data pada peringkat logika.
Pengertian ERD
ERD merupakan suatu model untuk menjelaskan hubungan antar data dalam basis data berdasarkan objek-objek dasar data yang mempunyai hubungan antar relasi.ERD untuk memodelkan struktur data dan hubungan antar data, untuk menggambarkannya digunakan beberapa notasi dan simbol. Pada dasarnya ada tiga simbol yang digunakan, yaitu :
Seperti contoh data di bawah ini
a). Supplier ke Faktur relasinya adalah one to many, artinya adalah satu supplier mempunyai
banyak faktur, faktur punya relasi terhadap supplier.
b). Faktur ke Transaksi_Barang relasinya adalah one to many, artinya adalah satu faktur
mempunyai beberapa transaksi barang (satu faktur terdiri dari satu atau lebih transaksi
barang).
c). Barang ke Transaksi_Barang relasinya adalah one to many, artinya adalah satu barang bisa
ada pengertian lain tentang ERD ,yaitu merupakan suatu model untuk menjelaskan hubungan antar data dalam basis data berdasarkan objek-objek dasar data yang mempunyai hubungan antar relasi.
ERD untuk memodelkan struktur data dan hubungan antar data, untuk menggambarkannya digunakan beberapa notasi dan simbol. Pada dasarnya ada tiga simbol yang digunakan, yaitu :
a. Entiti
Entiti merupakan objek yang mewakili sesuatu yang nyata dan dapat dibedakan dari sesuatu yang lain (Fathansyah, 1999: 30). Simbol dari entiti ini biasanya digambarkan dengan persegi panjang.
b. Atribut
Setiap entitas pasti mempunyai elemen yang disebut atribut yang berfungsi untuk mendeskripsikan karakteristik dari entitas tersebut. Isi dari atribut mempunyai sesuatu yang dapat mengidentifikasikan isi elemen satu dengan yang lain. Gambar atribut diwakili oleh simbol elips.
c. Hubungan / Relasi
Hubungan antara sejumlah entitas yang berasal dari himpunan entitas yang berbeda. Relasi dapat digambarkan sebagai berikut :
Relasi yang terjadi diantara dua himpunan entitas (misalnya A dan B) dalam satu basis data.
1). (One to one)
Hubungan relasi satu ke satu yaitu setiap entitas pada himpunan entitas A berhubungan paling banyak dengan satu entitas pada himpunan entitas B.
2). (One to many)
Setiap entitas pada himpunan entitas A dapat berhubungan dengan banyak entitas pada himpunan entitas B, tetapi setiap entitas pada entitas B dapat berhubungan dengan satu entitas pada himpunan entitas A.
3). (Many to many)
Setiap entitas pada himpunan entitas A dapat berhubungan dengan banyak entitas pada himpunan entitas B.