Lompat ke konten Lompat ke sidebar Lompat ke footer

Basis Data - Database Relasional



1. Konsep Database Relasional
Dr. E.F. Codd pada tahun 1970 telah memperkenalkan model relasional sistem database yang merupakan dasar untuk Relational Database Management System (RDBMS). Sebelum konsep database relasional telah digunakan dua model database yaitu Network dan Hierarchical Database. RDMBS memiliki kemudahan dalam penggunaannya dan memiliki fleksibilitas dalam struktur, sehingga sangat cepat populer ditambah dengan beberapa vendor yang inovatif dalam membantu mengembangkan aplikasi-aplikasi yang powerfulserta produk-produk yang menawarkan solusi. 

Dalam database relasional, data disimpan dalam bentuk relasi atau tabel dua dimensi, dan antartabel satu dengan tabel yang lainnya terdapat hubungan atau relationship. Komponen-komponen model ralasional meliputi : Kumpulan objek yang memiliki keterkaitan atau relasional antar penyimpan data, Set operator yang dapat melakukan relasi untuk membuat relasi yang lainnya, dan Integritas datauntuk akurasidan konsistensi. Untuk membuat struktur tabel, mengisi data ke tabel, mengubah data dan menghapus data dari tabel diperlukan software RDBMS, sedangkan perintah yang digunakan disebut Structure Query Language (SQL) sehingga setiap software RDBMS dapat digunakan untuk menjalankan perintah SQL.

2. Definisi Database Relasional
Sebuah database relasional menggunakan hubungan atau tabel dua dimensi untuk menyimpan informasi. Sebagai contoh: Kita ingin menyimpan informasi tentang semua karyawan yang ada pada salah satu perusahaan. Dalam sebuah database relasional, kita membuat beberapa tabel untuk menyimpan bagian-bagian informasi yang berbeda tentang karyawan yang bekerja diperusahaan tersebut, misalnya tabel yang menyimpan informasi tentang karyawan, tabel yang menyimpan informasi tentang departemen, tabel yang menyimpan informasi tentang gaji.


3. Model Data
Modelmerupakan landasan sebuah desain. Sebelum sebuah mobil diproduksi, terlebih dahalu para perancang membuatmodelmobil dan bekerja secara rinci dan detail pada model mobil tersebut.Dalam cara yang sama, perancang sistemmengembangkan modeluntuk mengeksplorasi ide-ide dan meningkatkan pemahaman desain database. 

Tujuan sebuah Model adalah membantu mengkomunikasikan konsepkonsep yang ada dipikiran orang. Model dapat digunakan untuk melakukan hal berikut: menyampaikan/mengkomunikasikan, mengkategorikan, menggambarkan, menentukan, menyelidiki, mengembangkan, menganalisis, dan meniru. Model yang baik adalah model yang cocok dalam banyak kegunaan, dapat dipahami oleh pengguna akhir, dan berisi detail yang cukup untuk pengembang dalam membangun sistem data base.


4. Model Hubungan Entitas (Entity Relationship Model)
Dalamsistem yang efektif, data dibagi menjadi kategori diskrit atau entitas. Sebuah hubungan entitas (ER) model adalah sebuah ilustrasi dari berbagai entitas dalam bisnis dan hubungan diantara mereka. Model ER berasal dari spesifikasi bisnis atau narasi dan dibangun selama tahap analisis siklus hidup pengembangan sistem (System Development Life Cycle).

Manfaat Model ER
  • a. Informasi Dokumen bagi organisasi dalam format yang jelas tepat.
  • b. Memberikan gambaran yang jelas tentang ruang lingkup kebutuhan informasi.
  • c. Menyediakan peta bergambar yang mudah dipahami untuk desain database.
  • d. Menawarkan kerangka kerja yang efektif untuk mengintegrasikan beberapa aplikasi.

Komponen Kunci
  • a. Entitas: Suatu hal yang penting tentang informasi yang perlu diketahui. Contohnya adalah departemen, karyawan, dan pesanan.
  • b. Atribut: Sesuatu yang menggambarkan atau memenuhi syarat suatuentitas. Sebagai contoh, untukentitas karyawan, atributnya adalah:nomor karyawan, nama, jabatan, tanggal perekrutan, nomor departemen, dan sebagainya. Setiap atribut yang baik adalahdiperlukan atau opsional. Pernyataan ini disebut optionality.
  • c. Hubungan: Hubungan atau relationship adalah sebuah asosiasiantara entitas dan derajat.Contohnya adalah karyawan dandepartemen, dan pesanan dan item barang.



    5. Konvensi Model Hubungan Entitas

    Konvensi Model ER

    Entitas

    Untuk mewakili entitas dalam model, menggunakan konvensi sebagai
    berikut :
    a. Singular, nama entitas yang unik
    b. Nama entitas dalam huruf besar
    c. Kotakdengan garis tipis.
    d. Nama sinonim opsional dengan huruf besar didalam tanda kurung: (). Atribut Untuk mewakili atribut dalam model, menggunakan konvensi sebagai berikut :
    • a. Nama Singular dalam huruf kecil.
    • b. Asterisk(*) tanda untuk atribut wajib (yaitu, nilai-nilai yang harus diketahui).
    • c. Karakter"o" tanda untuk atribut opsional (yaitu, nilai-nilai yang mungkin dikenal).

    6. Hubungan Multi Tabel
    Setiap tabel berisi data yang menggambarkan secara tepat satu entitas. Sebagai contoh, tabel EMPLOYEES berisi informasi tentang karyawan. Kategori data yang tercantum di bagian atas setiap tabel, dankasuskasus individu tercantum di bawah tabel. Dengan menggunakan formattabel, dapat dengan mudah memvisualisasikan, memahami, dan menggunakan informasi. Karena data tentang entitas yang berbeda disimpan dalam tabel yang berbeda, sehingga perlu untuk menggabungkan dua atau lebih tabel dalam menyelesaikan permasalahan tertentu. Sebagai contoh, untuk mengetahui lokasi departemen mana seorang karyawan bekerja. Dalam skenario ini, memerlukan informasi dari tabel EMPLOYEES (yang berisi data tentang karyawan) dan tabel DEPARTMENTS (yang berisi informasi tentang departemen). Dengan RDBMS, seseorang dapat menghubungkan data yang berada dalam satu tabel dengan data yang berada di tabel lain menggunakan foreign key. Foreign key adalah kolom (atau setkolom) yang mengacu pada Primary key dalam tabel yang sama atau tabel lain. Data dalam dua tabel yang terpisah dapat diorganisasi menjadi informasi baru yang dapat dikelola secara terpisah.


    7. Terminologi Database Relasional
    Sebuah database relasional dapat berisi satu atau banyak tabel. Sebuah table merupakanstruktur penyimpanan dasar dari sebuah RDBMS. Sebuah tabelmemiliki semuadata yang diperlukan tentang sesuatu di dunia nyata, seperti karyawan, faktur, atau pelanggan.

    Tabel
    Didalam sistem relasional database data dinyatakan dengan menggunakan tabel (relations). Sebuah tabel mempunyai struktur seperti dabawah ini,

    Sebuah tabel harus diberi nama secara unik sebagai identitasnya dan terdiri dari beberapa baris sebagai penyimpanan informasi, dan masingmasing baris berisi satu record. Sebuah tabel dapat mempunyai sebuah kolom atau lebih. Sebuah kolom memiliki sebuah nama dan tipe data yang diberlakukan dan merupakan deskripsi atribut pada record.Struktur tabel yang disebut juga relation schema, ditentukan oleh atributatributnya. 
    Tipe informasi yang tersimpan di dalam tabel ditentukan oleh tipe data yang terdapat pada atribut-atributnya pada saat tabel dibuat. Sebuah tabel dapat mempunyai lebih dari 254 kolom yang mempunyai tipe data yang sama atau tipe data yang berbeda sesuai dengan penempatan values (domain). Kemungkinan-kemungkinan domain yang dipergunakan adalah alphanumeric data (strings), numbers, dan date formats. ORACLE menawarkan tipe-tipe data dasar seperti di bawah ini:

    a. Char (n): Fixed-lenght character data (strings), mendefinisikan string sepanjang n karakter. Nilai maksimum untuk n adalah 255 byte (....... di ORACLE 9i). Bila n tidak dituliskan, maka panjang karakteryang berlaku adalah 1.
    contoh: char(40).

    b. Varchar2 (n) : Variable-lenght character strings, mendefiniskan string yang panjangnya berubah-ubah sesuai dengan kebutuhan dan dibatasi sebanyak karakter n. Nilai n maksimum adalah 2000 (....... di ORACLE 9i). Hanya banyaknya byte yang digunakan saja yang tersimpan pada memori.
    contoh: varchar2(80).

    c. Number (o,d) : Numeric data type , mendefinisikan angka integerdan riel, o = jumlah digit, d = jumlah digit yang berada dibelakang koma. Nilai maksimum: o = 38, d = -84 sampai +127.
    contoh: number (8), number (5,2).

    Number (5,2) nilainya tidak dapat lebih dari 999.99 , jika melebihi nilai maksimum tersebut maka akan menjadi kesalahan. Tipe data yang berasal dari number adalah int[eger], dec[imal], smallint dan real.

    d. Date: Date data type untuk menempatkan atau mendefinisikan tanggal, bulan, tahun, hari, jam, menit dan detik. Format keadaan awal ( default ) untuk date adalah : DD-MMM-YY.
    Contoh : ’10-FEB-94’,’29-NOV-98’.

    e. long: mendefinisikan tipe data binary, panjangnya karakter maksimum adalah 2GB. Setiap tabel hanya diperbolrhkan satu kolom saja yang mempunyai tipe long.

    Catatan:
    Di dalam ORACLE–SQL tidak ada tipe data boolean, tetapi dengan data yang sama dapat menggunakan char(1) atau number(1). Selama tidak terdapat ketentuan/hambatan lain yang membatasi kemungkina values pada atribut, dapat digunakan special value yaitu null (untuk sesuatu yang tidak diketahui). Nilai ini tidak sama dengan angka 0, dan juga tidak sama dengan angka kosong.




    Gambar 1.5 menunjukkan isi tabel atau relasi EMPLOYEES. Huruf-huruf menunjukkan hal-hal sebagai berikut:

    a. Baris tunggal (atau tuple) mewakili semua data yang dibutuhkan untuk karyawan tertentu. Setiap baris dalam sebuah tabel harus diidentifikasi oleh primary key, yang memungkinkan tidak ada duplikasi baris. Urutan baris tidak signifikan; menentukan urutan baris saat data diambil.

    b. Sebuah kolom ataua tribut yang berisi nomor karyawan. Jumlah karyawan mengidentifikasi karyawan yang unik dalam tabel EMPLOYEES. Dalam contoh ini, kolom nomor karyawan yang
    ditunjuk sebagai primary key. Sebuah primary key harus mengandung nilai, dan nilai harus unik.

    c. Sebuah kolomyang bukan key value. Sebuah kolom merupakan atau merepresentasikan salah satu jenis data dalam tabel; dalam contoh ini, data adalah gaji semua karyawan. Urutan kolom tidak signifikan ketika menyimpan data; menentukan urutan kolom saat data diambil.

    d. Sebuah kolom yang berisi nomor departemen, yang juga merupakan foreign key. Foreign key adalah kolom yang mendefinisikan bagaimana tabel berhubungan satu sama lain. Foreign key mengacu pada primary key atau kunci unik di tabel yang sama atau di tabel lain.

    Dalam contoh, DEPARTMENT_ID secara unik mengidentifikasi sebuah departemen dalam tabel DEPARTMENTS.

    e. Sebuah field dapat ditemukan di persimpangan dari baris dan kolom. Hanya ada satu nilai di dalamnya.

    f. Sebuah field mungkin tidak memiliki nilai di dalamnya. Ini disebut nilai null. Dalam tabel EMPLOYEES,hanya karyawan yang memiliki peran perwakilan penjualan memiliki nilai di COMMISSION_PCT (komisi).


    8. Properti Database Relasional
    Dalam sebuah relasional database, pengguna tidak menentukan rute akses ke tabel, dan tidak perlu tahu bagaimana data diatur secara fisik. Untuk mengakses database, cukup dengan mengeksekusi perintahperintah atau pernyataan SQL, yang merupakan American National Standards Institute (ANSI) bahasa standar untuk operasi relasional database. SQL berisi satu set operator-operator yang cukup besar untuk membagi dan mempertautkan hubungan. Database dapat dimodifikasi dengan menggunakan pernyataan SQL.

    9. Berkomunikasi dengan RDBMS menggunakan SQL

    Structured Query Language
    Menggunakan SQL, pengguna dapat berkomunikasi dengan server data base. SQL memiliki beberapa keuntungan: efisien, mudah untuk dipelajari dan digunakan, dan memiliki fungsi-fungsi yang sangat lengkap (menentukan, mengambil, dan memanipulasi data dalam tabel).



    Pernyataan-pernyataanSQL

    Data Manipulation Language (DML)
    SELECT
    INSERT
    UPDATE
    DELETE
    MERGE

    Data Definition Language (DDL)
    CREATE
    ALTER
    DROP
    RENAME
    TRUNCATE
    COMMENT

    Data Control Language (DCL)
    GRANT
    REVOKE

    Transaction Control
    COMMIT
    ROLLBACK
    SAVEPOINT

    SELECT
    INSERT
    UPDATE
    DELETE
    MERGE
    Mengambil datadari database, mengisi baris baru, merubah baris yang ada, dan menghapus baris yang tidak diinginkan dari tabel dalam database secara berturut-turut, dikenal sebagai data manipulation language (DML).

    CREATE
    ALTER
    DROP
    RENAME
    TRUNCATE
    COMMENT
    Membuat, merubah, dan menghapus struktur data daritabel, dikenal sebagai data definition language (DDL).

    GRANT
    REVOKE
    Memberika natau menghilangkan hak akses ke data base maupun struktur didalamnya.

    COMMIT
    ROLLBACK
    SAVEPOINT
    Mengelola perubahan yang dibuatoleh pernyataanDML. Perubahan data bisa dikelompokkan bersama ke dalam transaksilogis.


    Posting Komentar untuk "Basis Data - Database Relasional"