Beranda > system database > Database 2

Database 2


Tabel adalah inti dari sebuah database. Tabel menyimpan data yang dikelompokkan di dalam bentuk baris dan kolom seperti layaknya lembar kerja.

Setiap baris mewakili record, dan setiap kolom adalah atribut atau field.

Setiap field mengandung satu jenis informasi.

Sebagai contoh :

Field bernama Value memiliki tipe data Numeric, sementara field bernama Name memiliki informasi bertipe Teks.

Field-field pada tabel bisa memiliki pembatasan mengenai isi yang akan disimpan ke dalam field tersebut.

Sebagai contoh :

Sebuah field bernama Quantity tidak bisa menyimpan teks, hanya bisa menyimpan angka, dan tidak bisa menerima nilai di bawah 1 atau di atas 100.

 Index

Indeks adalah file jenis khusus yang bekerja sama dengan tabel.

Tujuannya adalah mempercepat proses mengakses record atau sekelompok record tertentu.

Indeks bisa dibandingkan dengan indeks yang terdapat pada buku, di mana kita tidak perlu membaca seluruh buku untuk menemukan halaman tertentu, tetapi hanya perlu menggunakan indeks untuk mencari subyek dan nomor halamannya yang bersangkutan

Query

Adalah perintah SQL yang dirancang untuk memnggil kelompok record tertentu dari 1 tabel atau lebih.

Bahasa Query mulai dikembangkan oleh IBM pada tahun 1970 yang hingga saat ini telah digunakan pada hampir semua produk DBMS (Database Management System) yaitu Structure Query Language yang dikenal dengan standar SQL.

Entity-Relationship

Model Entity-Relationship (ER)

Model Entity-Relationship adalah model data konseptual tingkat tinggi untuk perancangan basis data. Model data konseptual adalah himpunan konsep yang mendeskripsikan struktur basis data, transaksi pengambilan dan pembaruan basis data.

Model ER adalah data konseptual tak tergantung DBMS dan platform perangkat keras tertentu. Model ER dikemukakan oleh Chen [1976]. Sejak itu, telah memperoleh banyak perhatian dan perluasan.

Model ER adalah persepsi terhadap dunia nyata sebagai terdiri objek-objek dasar yang disebut entitas dan keterhubungan (relationship) antar entitas-entitas itu.

Konsep paling dasar di model ER adalah entitas, relationship dan atribut.

Komponen-komponen utama model ER adalah :

a. Entitas (entity), Entitas memodelkan objek-objek yang berada diperusahaan/lingkungan.

b. Relationship. Relationship memodelkan koneksi/hubungan di antara entitas-entitas.

c. Atribut-atribut (properti-properti), memodelkan properti-properti dari entitas dan relationship.

d. Konstrain-konstrain (batasan-batasan) integritas, konstrain-konstrain ketentuan validitas.

Entitas (Entity) dan Himpunan Entitas (Entitas Sets)

Entitas merupakan individu yang mewakili sesuatu yang nyata (eksistensinya) dan dapat dibedakan dari sesuatu yang lain. Sebuah kursi yang kita duduki, seseorang yang menjadi pegawai di sebuah perusahaan dan sebuah mobil yang melintas di depan kita adalah entitas.

Sekelompok entitas yang sejenis dan berada dalam lingkup yang sama membentuk sebuah himpunan entitas (entity sets). Sederhananya, entitas menunjuk pada individu suatu objek, sedang himpunan entitas menunjuk pada rumpun (family) dari individu tersebut.

Seorang pasien, misalnya akan dimasukkan dalam himpunan entitas pasien. Sedang seorang dokter akan ditempatkan dalam himpunan entitas dokter.

Dalam berbagai pembahasan/literature, penyebutan himpunan entitas (yang kurang praktis) ini seringkali digantikan dengan sebutan entitas saja.

Karena itu sering ditemui, penggunaan istilah entitas (entity) di sebuah literature sebenarnya menunjuk pada himpunan entitas.

 Kunci Entitas

Sebagaimana model relasional, adalah penting dan berguna untuk memasukkan kunci yang diasosiasikan dengan himpunan entitas. Kunci pada himpunan entitas S, adalah himpunan atribut A. Sehingga tidak ada dua entitas di S yang mempunyai nilai sama untuk tiap atribut di A dan tidak ada subset di A yang dapat menjadi kunci di S, dengan demikian kunci mempunyai property minimal.

Atribut (Atributes/Properties)

Setiap entitas pasti memiliki atribut yang mendeskripsikan karakteristik (property) dari entitas tersebut.

Penentuan / pemilihan atribut-atribut yang relevan bagi sebuah entitas merupakan hal penting lainnya dalam pembentukan model ER. Contoh : nim, nama, alamat, kode.

Relasi (Relationship) dan Himpunan Relasi (Relationship Sets)

Relasi menunjukkan adanya hubungan di antara sejumlah entitas yang berasal dari himpunan entitas yang berbeda.

Misalnya, entitas seorang mahasiwa dengan

nim = ‘980001’ dan

nama_mhs = ‘Ali Akbar’ (yang ada di himpunan entitas Mahasiswa)

mempunyai relasi dengan entitas sebuah mata kuliah dengan

kode_kul=’IF-110’ dan

nama_kul=’Struktur Data’.

Relasi diantara kedua entitas tadi mengandung arti bahwa mahasiswa tersebut sedang mengambil/mempelajari mata kuliah tersebut di sebuah perguruan tinggi yang ditinjau.

Kumpulan semua relasi diantara entitas-entitas yang terdapat pada himpunan entitas-himpuan entitas tersebut membentuk himpunan relasi (relationship sets).

Sebagaimana istilah himpunan entitas yang banyak sekali disingkat menjadi entitas, istilah himpunan relasi jarang sekali digunakan dan lebih sering disingkat dengan istilah relasi saja.

 Kardinalitas/derajat Relasi

Kardinalitas Relasi menunjukkan jumlah maksimum entitas yang dapat berelasi dengan entitas pada himpunan entitas yang lain. Kardinalitas relasi merujuk kepada hubungan maksimum yang terjadi dari himpunan entitas yang satu ke himpunan entitas yang lain dan begitu juga sebaliknya.

Kardinalitas di antara dua himpunan entitas (misalnya A dan B) dapat berupa :

a. Satu ke satu (One to One),

setiap entitas pada himpunan entitas A berhubungan dengan paling banyak dengan satu entitas pada himpunan entitas B,

begitu juga sebaliknya setiap entitas pada himpunan entitas B berhubungan dengan paling banyak dengan satu entitas pada himpunan entitas A.

b. Satu ke Banyak (one to many),

setiap entitas pada himpunan entitas A dapat berhubungan dengan banyak entitas pada himpunan entitas B,

tetapi tidak sebaliknya, dimana setiap entitas pada himpunan entitas B berhubungan dengan paling banyak dengan satu entitas pada himpunan entitas A.

c. Banyak ke Satu (Many to One),

setiap entitas pada himpunan entitas A berhubungan dengan paling banyak dengan satu entitas pada himpunan entitas B,

tetapi tidak sebaliknya, dimana setiap entitas pada himpunan entitas A berhubungan dengan paling banyak satu entitas pada himpunan entitas B.

d. Banyak ke Banyak (Many to Many)

setiap entitas pada himpunan entitas A dapat berhubungan dengan banyak entitas pada himpunan entitas B,

demikian juga sebaliknya, di mana setiap entitas pada himpunan entitas B dapat berhubungan dengan banyak entitas pada himpunan entitas A.

Diagram Entity-Relationship (ER)

Penggambaran Model ER secara sistematis dilakukan melalui diagram ER. Notasi-notasi simbolik di dalam Diagram ER yang dapat digunakan adalah:

a. Persegi panjang, menyatakan Himpunan Entitas.

b. Lingkaran/Elips, menyatakan atribut (Atribut yang berfungsi sebagai key digaris bawahi).

c. Belah ketupat, menyatakan Himpunan Relasi.

d. Garis, sebagai penghubung antara Himpunan Relasi dengan Himpunan Entitas dan Himpunan Entitas dengan Atributnya.

e. Kardinalitas Relasi dapat dinyatakan dengan banyaknya garis cabang atau dengan pemakaian angka (1 dan 1 untuk relasi one to one, 1 dan N untuk relasi one to many atau N dan N untuk relasi many to many).

Tahap Pembuatan Diagram ER

Diagram ER selalu dibuat secara bertahap. Paling tidak ada dua kelompok penahapan yang biasa ditempuh di dalam pembuatan diagram ER, yaitu :

a. Tahap pembuatan Diagram ER awal (preliminary design). Yaitu :

– Melakukan pengidentifikasian dan menetapkan seluruh himpunan entitas yang akan terlibat.

– Menentukan atribut-atribut key dari masing-masing himpunan entitas.

– Mengidentifikasi dan menetapkan seluruh himpunan relasi di antara himpunan entitas-himpunan entitas yang ada beserta foreign key nya.

– Menentukan derajat/kardinalitas relasi untuk setiap himpunan relasi.

– Melengkapi himpunan entitas dan himpunan relasi dengan atribut-atribut deskriptif (non key).

b. Tahap optimasi Diagram ER (final design).

Normalisasi

Proses normalisasi adalah proses untuk memperoleh properti-properti skema relasi yang bagus menjadi bentuk normal lebih tinggi sehingga syarat-syarat dibawah ini terpenuhi:

a. Mengoptimalisasi redudansi (pengulangan data yang tidak perlu). Redudansi tidak bisa dihilangkan sama sekali karena berguna untuk integritas referensial, tetapi redudansi bisa dioptimalisasi. Untuk jumlah data yang tidak terlalu banyak mungkin tidak terlalu berpengaruh dalam hal penggunaan harddisk. Tapi bayangkan jika ada ribuan, bahkan jutaan redudansi, mungkin akan sangat berpengaruh pada penggunaan ruang.

b. Menghilangkan anomali. Anomali pada dasarnya adalah ketidak-konsistenan (inkonsistensi). Misalkan ada pergantian nama dari Bank Perkasa menjadi Bank Perkasa Utama sebanyak 4 record. Jika pergantian nama hanya dilakukan pada salah satu record saja, maka terjadi ketidak-konsistenan yaitu satu nomor bank berrelasi dengan 2 nama bank yang berbeda.

Dekomposisi tabel dapat mengurangi redudansi yang ada dan menghilangkan anomali.

Perancangan melalui proses normalisasi mempunyai keuntungan-keuntungan sebagai berikut :

a. Meminimalkan ukuran penyimpanan yang diperlukan untuk penyimpanan data.

b. Meminimalkan resiko inkonsistensi data pada basis data.

c. Meminimalkan kemungkinan anomaly pembaruan.

d. Memaksimalkan stabilitas struktur data.

Bentuk Normal

Tujuan proses normalisasi adalah mengkonversi relasi menjadi bentuk normal lebih tinggi. Terdapat beragam tingkat bentuk normal, yaitu :

a. Bentuk normal pertama (1NF)

b. Bentuk normal kedua (2NF)

c. Bentuk normal ketiga (3NF)

d. Bentuk normal Boyce-Codd (BCNF)

e. Bentuk normal keempat (4NF)

f. Bentuk normal kelima (5NF)

Codd mendefinisikan bentuk normal pertama, kedua dan ketiga di makalah (Codd, 1970). Bentuk normal ketiga kemudian diperbaiki sehingga mempunyai bentuk normal yang lebih kuat yaitu BCNF (Codd, 1974). Fagin memperkenalkan bentuk normal keempat (Fagin, 1977), kemudian Fagin juga memperkenalkan bentuk normal kelima (Fagin, 1979).

Bentuk normal pertama untuk menghilangkan atribut bernilai jamak. Bentuk normal kedua untuk menghilangkan kebergantungan parsial. Bentuk normal ketiga untuk menghilangkan kebergantungan transitif. Bentuk normal Boyce-Codd untuk menghilangkan anomaly tersisa disebabkan kebergantungan fungsional. Bentuk normal keempat untuk menghilangkan kebergantungan nilai jamak. Bentuk normal kelima untuk menghilangkan anomaly tersisa.

Tiga bentuk normal pertama berkaitan dengan kebergantungan fungsional. Sementara itu bentuk keempat dan kelima berkaitan dengan redudansi yang disebabkan kebergantungan banyak nilai (multi-valued dependencies).

Bentuk Normal Pertama

Bentuk normal pertama adalah ekivalen dengan definisi model relasional. Relasi adalah bentuk normal pertama (1NF) jika semua nilai atributnya adalah sederhana (bukan komposit).

Bentuk Normal Kedua

Bentuk normal kedua memiliki ketentuan harus telah berbentuk normal pertama (1NF), dan semua atribut bukan utama harus bergantung fungsional penuh pada kunci relasi.

Relasi pada bentuk normal kedua harus tidak menyimpan fakta-fakta mengenai bagian kunci relasi. Bentuk normal kedua menghilangkan kebergantungan parsial dan masih memiliki anomali-anomali yang secara praktis tidak dapat diterima.

Bentuk Normal Ketiga

Bentuk normal ketiga memiliki ketentuan harus telah berbentuk normal kedua (2NF) dan relasi tidak boleh memuat kebergantungan fungsional di antara atribut-atribut bukan utama.

Bentuk normal ketiga menghilangkan kebergantungan transitif, awalnya bentuk normal ketiga dipikir sebagai bentuk normal puncak/paling akhir. Namun kemudian dapat ditemukan bentuk normal lebih kuat yaitu bentuk normal Boyce-Codd.

Bentuk Normal Boyce-Codd (BCNF)

BCNF memiliki ketentuan yaitu masing-masing atribut utama bergantung fungsional penuh pada masing-masing kunci dimana kunci tersebut bukan bagiannya. Relasi adalah BCNF (optimal) jika setiap determinan atribut-atribut relasi adalah kunci relasi. Relasi adalah BCNF (optimal) jika kapanpun fakta-fakta disimpan mengenai beberapa atribut, maka atribut-atribut ini merupakan satu kunci relasi. BCNF dapat memiliki lebih dari satu kunci. Properti penting BCNF adalah relasi tidak memiliki informasi yang redundan.

Bentuk Normal Keempat

Relasi dalam bentuk normal keempat (4NF) jika relasi dalam BCNF dan tidak berisi kebergantungan banyak nilai. Untuk menghilangkan kebergantungan banyak nilai dari satu relasi, kita membagi relasi menjadi dua relasi baru. Masing – masing relasi berisi dua atribut yang mempunyai hubungan banyak nilai.

Bentuk Normal Kelima

Bentuk normal kelima (5NF) berurusan dengan properti yang disebut join tanpa adanya kehilangan informasi (lossless join). Bentuk normal kelima (5NF) juga disebut PJNF (projection-join normal form). Kasus-kasus ini sangat jarang muncul dan sulit untuk dideteksi secara praktis.

View

View adalah tabel virtual yang isinya ditentukan oleh query ke dalam database.

View ini bukanlah tabel fisik, tetapi sekumpulan instruksi yang memberikan hasil serangkaian data.

Trigger

Trigger adalah prosedur tersimpan pada Microsoft SQL Server yang secara otomatis dijalankan apabila data di dalam tabel berubah karena eksekusi perintah SQL (INSERT, UPDATE atau DELETE).

Salah satu penggunaannya yang paling umum adalah untuk menerapkan pembatasan yang lebih kompleks dari yang telah diizinkan melalui pembatasan CHECK, yang berfungsi membatasi informasi yang disisipkan ke dalam kolom.

Trigger bisa dibuat bersama dengan perintah INSERT, yang akan melakukan query ke tabel lain dan mengembalikan nilai logik yang membantu membatasi data yang diberikan kepada kolom tertentu.

Sebagai contoh:

Trigger bisa dibuat untuk menjalankan replikasi, misalnya apabila ada sebuah baris disisipkan ke dalam database Z,

sebuah baris dengan informasi yang sama akan ditambahkan ke dalam database Y.

Atau

Apabila sebuah baris dihapus dari sebuah tabel,

Trigger akan menghapus baris lain yang berhubungan dengan baris tersebut pada tabel lain.

Trigger dibuat sebagai sebuah transaksi dan bisa dimundurkan apabila ada masalah yang dideteksi.

Kategori:system database
  1. Belum ada komentar.
  1. No trackbacks yet.

Tinggalkan Balasan

Isikan data di bawah atau klik salah satu ikon untuk log in:

Logo WordPress.com

You are commenting using your WordPress.com account. Logout / Ubah )

Gambar Twitter

You are commenting using your Twitter account. Logout / Ubah )

Foto Facebook

You are commenting using your Facebook account. Logout / Ubah )

Foto Google+

You are commenting using your Google+ account. Logout / Ubah )

Connecting to %s

%d blogger menyukai ini: