Outline: Relational Data Model Entity Relationship Diagram PEMROGRAMAN VISUAL II Outline: Relational Data Model Entity Relationship Diagram
KONSEP BASIS DATA Basisdata (database) adalah kumpulan data yang saling berhubungan satu dengan lainnya yang tersimpan di perangkat keras komputer dan diperlukan suatu perangkat lunak untuk memanipulasi basis data tersebut. DBMS adalah sistem perangkat lunak yang digunakan untuk mengendalikan data, termasuk penyimpanan data, pengambilan data, keamanan data dan integritas data.
KEY Key adalah elemen record yang dipakai untuk menemukan record pada waktu akses. Untuk secara unik mengenali suatu baris (record), setiap tabel harus memiliki suatu primary key. Dalam konsep database, dikenal beberapa key, antara lain: Super Key Suatu atribut atau set dari atribut yang secara unik mengidentifikasikan tuple di dalam suatu relasi. Candidate Key Suatu atribut/sekelompok atribut pada suatu relasi yang mempunyai dua sifat (property): Unik, nilai dari atribut–atribut tersebut secara unik menentukan tuple-tuple di relasi tersebut Minimality, Jika atribut–atribut tersebut adalah Key gabungan, tidak ada bagian dari kelompok atribut tersebut yang dapat dihilangkan
KEY Primary Key Suatu candidate key yang dipilih sebagai penentu dari atribut-atribut lain. Alternate key. Candidate Key yang tidak terpilih Foreign Key Suatu atribut pada suatu relasi dikatakan suatu Foreign Key bila: Setiap nilai atribut foreign key tersebut adalah Non Null. Terdapat suatu relasi lain yang mempunyai Primary Key yang mempunyai nilai yang sama dengan atribut foreign key tersebut.
DATABASE RELATIONAL Database Relasional adalah suatu model database yang disajikan dalam bentuk tabel. Model ini diperkenalkan pertama kali oleh E.F. Codd. Tujuan dari model data relasional adalah: Untuk menekankan kemandirian data. Untuk mengatasi ketidak konsistenan dan duplikasi data dengan menggunakan konsep normalisasi Untuk meningkatkan kemampuan akses data
PROSES PERANCANGAN DB Empat Tahap Penting dalam Perancangan Database: Penentuhan kebutuhan Perancangan secara konseptual Model ER-Diagram Perancangan secara logis Transformasi model ER ke Model Relasional Perancangan secara fisik Penciptaan basisdata, relasi & hal-hal terkait ke dalam bentuk fisik
PEMODELAN DGN ER-DIAGRAM ER-Diagram berupa model data konseptual, yg merepresentasikan data dlm suatu organisasi. ER-Diagram tidak bergantung kepada software yg akan dipakai untuk mengimplementasikan database. Sejauh ini banyak sekali model notasi yang dipakai untuk membuat ER-Diagram.
Komponen utama ERD Entitas Merupakan sebuah objek yg keberadaannya dapat dibedakan terhadap objek lain. Entitas dapat berupa: orang, benda, tempat, kejadian, konsep. Contoh Orang : MAHASISWA, DOSEN, PEGAWAI, PENERBIT Benda : MOBIL, MESIN Tempat : PROPINSI, NEGARA Kejadian : PENJUALAN, REGISTRASI Konsep : MATA KULIAH, KURIKULUM
Contoh Entitas
Komponen utama ERD Atribut Properti/karakteristik yg melekat dlm suatu entitas, dimana properti itu bermakna bagi organisasi/perusahaan. Atribut sederhana tidak bisa dipecah menjadi bagian yg lebih kecil lagi. Atribut komposit adalah atribut yg dapat dipecah menjadi komponen yg lain. Atribut nilai berganda adalah atribut yg berkemungkinan memiliki nilai lebih dari satu. Atribut tersimpan adalah atribut yg nilainya secara eksplisit tersimpan dlm tabel. Atribut turunan adalah atribut yg nilainya dapat dikalkulasi dari nilai atribut tersimpan.
Contoh ERD dengan Atribut
Atribut Kunci dan Bukan Kunci Dalam sebuah himpunan entitas harus dapat membedakan mana atribut yang berfungsi sebagai kunci (Primary key) dan yang bukan (Atribut Deskriptif). Atribut NIM merupakan kunci dari Himpunan Entitas Mahasiswa, karena NIM merupakan pengidentifikasi entitas yang paling unik untuk semua entitas dalam himpunan entitas tersebut. Contoh Atribut yang merupakan atribut deskriptif : nama_mhs Alamat_mhs Tglhr_mhs, dll
Komponen utama ERD Relasi Hubungan antara beberapa tipe entitas. Derajat relasi yang biasa digunakan dalam ER-Diagram adalah: Unary Relationship yakni model relationship yang terjadi diantara entity yang berasal dari entity set yang sama. Sering juga disebut recursive relationship. Contoh unary relationship:
Komponen utama ERD MATA_KULIAH MHS DOSEN kuliah_prasyarat berteman mendampingi
Komponen utama ERD Binary Relationship adalah model relationship antara instance-instance dari suatu tipe entitas. Contoh binary relationship: mengepalai DOSEN JURUSAN Mengambil MAHASISWA MATA KULIAH
Komponen utama ERD Ternary Relationship merupakan model relationship antara instance-instance dari tiga tipe entitas secara serentak. Contoh ternary relationship:
Komponen utama ERD Derajat Hubungan/Kardinalitas Menunjukkan jumlah maksimum entitas yang dapat berelasi dengan entitas pada himpunan entitas lain. Macam Kardinalitas: Satu ke Satu (One to One) Setiap entitas pada himpunan entitas A berhubungan dengan paling banyak dengan satu entitas pada himpunan entitas B, dan begitu sebaliknya setiap entitas pada himpunan entitas B berhubungan paling banyak satu entitas pada himpunan entitas A.
Komponen utama ERD Satu ke Banyak (One to Many) Setiap entitas pada himpunan entitas A berhubungan dengan banyak entitas pada himpunan entitas B, tetapi tidak sebaliknya, dimana setiap hinpunan entitas pada himpunan entitas B berhubungan paling banyak dengan satu entitas pada himpunan entitas A. Banyak ke Satu (Many to One) Setiap entitas pada himpunan entitas A berhubungan paling banyak dengan satu entitas pada himpunan entitas B, tetapi tidak sebaliknya, dimana setiap hinpunan entitas pada himpunan entitas B berhubungan banyak entitas pada himpunan entitas A
Komponen utama ERD Banyak ke Banyak (Many to Many) Setiap entitas pada himpunan entitas A dapat berhubungan dengan banyak entitas pada himpunan entitas B, dan demikian juga sebaliknya, dimana setiap entitas pada pada himpunen entitas B berhubungan banyak entitas pada himpunan entitas A.
SIMBOL ERD
Langkah Pembuatan ERD Mengidentifikasi dan menetapkan seluruh himpunan entitas yang akan terlibat Menentukan atribut-atribut key dari masing-masing himpunan entitas Mengidentfikasi 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 himpnan entitas dan himpunan relasi dengan atribut deskriptif (non key)
Langkah Pembuatan ERD
Transformasi ERD ke Tabel
Structured Query Language (SQL) Ada dua jenis perintah SQL,yaitu perintah pendefinisian data yakni Data Definition Language (DDL) dan perintah untuk manipulasi data yaitu Data Manipulation Language (DML). Berikut ini termasuk perintah pendefinisian data (DDL) CREATE - ALTER DROP - GRANT REVOKE, dll Berikut ini termasuk perintah manipulasi data (DML) - INSERT - UPDATE - DELETE - SELECT - COMMIT - ROLLBACK, dll
CREATE Digunakan untuk membuat database dan objek-objek di dalam database. Berikut sintaks yang termasuk dalam DDL: Perintah Keterangan CREATE DATABASE Untuk membuat database CREATE TABLE Untuk membuat tabel CREATE VIEW Untuk membuat View CREATE PROCEDURE Untuk membuat Stored Procedure ALTER DATABASE Untuk mengubah database ALTER TABLE Untuk mengubah struktur tabel DROP TABLE Untuk menghapus tabel
CREATE TABLE Sintak SQL pembuatan tabel: CREATE TABLE nama_tabel ( Nama field ke-1 tipe data (lebar_field), . . . Nama field ke-n tipe data (lebar_field) ) ; Untuk menambah acuan (reference) sebelum tanda ‘)’ tambahkan sintak: Contraint nama_contraint Primary key (nama_field_pk) not null ) ;
CREATE TABLE Untuk membuat tabel mengacu pada tabel lain (tabel relasi) sebelum tanda ‘)’ tambahkan sintak: Contraint nama_contraint Fereign key (nama_field_fk) references nama_tabel_acuan (nama_field_pk) ;
ALTER ALTER digunakan untuk menambah kolom, mengubah kolom atau menghapus kolom dari sebuah tabel. ALTER juga bisa digunakan untuk mengubah sebuah database. Sintak menambah kolom/field: ALTER TABLE nama_tabel ADD nama field tipe data (lebar_field); Sintak modifikasi/merubah kolom/field: ALTER TABLE nama_tabel ALTER COLUMN nama field tipe data (lebar_field); Sintak menghapus kolom/field: ALTER TABLE nama_tabel DROP COLUMN nama field;
DROP Digunakan untuk menghapus database dan objek-objek di dalam database. Perintah drop table akan berhasil jika tabel yang dihapus adalah tabel yang tidak ada relasi dengan tabel lain. Jika anda menghapus tabel acuan atau tabel reference, maka perintah drop table ini tidak akan berhasil. Sintak menghapus kolom/field: DROP TABLE nama_tabel;
INSERT Digunakan untuk menambah data dalam satu tabel Insert Into Nama_Table (namafield1,namafield2,…) Values (‘nilaifield1’,’nilaifield2’,…); Contoh: Insert Into mahasiswa(nim,nama) values (’12.11.0101’,’andika’); Atau bisa juga bila kita mengingat seluruh bentuk field dalam tabel dengan sintaks: Insert Into NamaTable Values (‘nilaifield1’,’nilaifield2’,…);
UPDATE Berfungsi untuk mengubah satu atau lebih data yang terdapat pada satu atau lebih kolom tabel Update namatabel set namafield=nilai where kondisi; Contoh: Update mahasiswa set alamat=‘Purwokerto’ where nim=’12.11.0102’;
DELETE Berfungsi untuk menghapus satu atau beberapa record dalam suatu tabel. Delete from namatabel where kondisi; Contoh: Delete from mahasiswa where nim=’12.11.0105’;
SELECT Berfungsi untuk Menampilkan record data yang ada dalam tabel Select * from namatabel; Contoh: Select * from mahasiswa; Simbol * bermaksud ‘all’ atau ‘semua’, dan digunakan untuk mewakili semua atribut dalam satu tabel