ENTITY RELATIONSHIP DIAGRAM (ERD)
ERD merupakan suatu model untuk menjelaskan hubungan antar
data dalam basis data berdasarkan objek-objek dasar data yang mempunyai
hubungan antar relasi. Model ERD
merupakan alat modeling data yang populer dan banyak digunakan oleh para
desainer basis data. ERD digunakan
untuk memodelkan struktur data dan hubungan antar data, untuk menggambarkannya
digunakan beberapa notasi dan simbol. Contoh
ERD :
Komponen ERD
Notasi Dasar ERD
1. Entitas
Entitas merupakan objek yang mewakili dari objek dalam dunia nyata yang
dapat dibedakan dengan objek lain, sebagai contoh anggota, buku dan pegawai. Entitas
di dalam ER-D direpresentasikan oleh bangun datar persegi panjang. Terdapat 2 macam entitas yaitu strong entity (entitas
kuat) dan weak entity (entitas lemah). Strong
entity adalah entitas yang berdiri sendiri, sedangkan weak entity adalah
entitas yang bergantung kepada strong entity. Strong Entity memiliki primary
key sedangkan weak entity tidak memiliki atribut yang dapat dijadikan primary
key.
2. Atribut
Atribut merupakan karakteristik dari entity atau relationship yang menyediakan penjelasan detail tentang entity atau
relationship tersebut. Sebagai
contoh atribut untuk entitas pegawai adalah ID_pegawai, nama, dan usia. Atribut
di dalam ER-D direpresentasikan dalam bentuk bangun datar oval.
Tipe – tipe atribut dapat dibedakan sebagai berikut :
a. Simple dan Composite
·
Atribut Simple
yaitu suatu atribut yang tidak bisa
dibagi menjadi bagian yg lebih kecil lagi. Contoh atribut simple adalah Jenis Kelamin.
·
Atribut Composite yaitu suatu atribut yang dapat di bagi menjadi beberapa bagian.
Contoh atribut composite adalah
nama yang dapat di bagi menjadi nama depan dan nama belakang.
b. Single
Value dan Multivalued
·
Atribut Single value
yaitu suatu atribut yang bisa di isi paling banyak dengan 1 nilai untuk setiap
baris data. Contoh atribut single
value adalah Jenis Kelamin.
·
Atribut Multivalued yaitu suatu atribut yang bisa lebih
dari 1 nilai yang sejenis untuk setiap baris data. Contoh atribut mutlivalued
value adalah pengarang, karena pengarang sebuah buku bisa terdapat dari
beberapa orang.
c. Derived
Attribute
Derived
Attribute yaitu suatu atribut yang nilainya
didapatkan dari hasil pengolahan atribut lain. Contoh atribut derived adalah usia yang didapatkan
dari perhitungan tanggal lahir dan tanggal sekarang.
*NOTE
: Atribut kunci biasa di beri tanda # atau garis bawah.
3. Relasi
Relasi didefinisikan sebagai hubungan diantara sejumlah
entitas yang berasal dari himpunan entitas yang berbeda. Sederhananya, relasi
dikenal sebagai hubungan yang terjadi antara satu atau lebih entitas. Sebagai
contoh dari relasi meminjam yang menghubungkan antara entitas anggota dan
entitas buku. Relasi pada ER-D direpresentasikan dalam bentuk bangun datar
belah ketupat.
4. Kardinalitas
Kardinalitas relasi menunjukkan jumlah maksimum entitas
yang dapat berelasi dengan entitas pada himpunan entitas lain. Adapun
kardinalitas yang terjadi di antara dua himpunan entitas adalah sebagai berikut:
a.
One to One
Kardinalitas ini terjadi
apabila entitas berhubungan dengan paling banyak
satu entitas. Contohnya
adalah seorang mahasiswa hanya dapat mengambil satu jurusan.
Kardinalitas One to Many terjadi apabila sebuah
entitas berhubungan dengan
banyak entitas. Contohnya
adalah seorang mahasiswa dapat mengontrak beberapa mata kuliah
c.
Many to One
Kardinalitas Many to One terjadi apabila beberapa
entitas hanya dapat berhubungan dengan satu entitas wali. Contohnya adalah
beberapa mahasiswa hanya dapat dibimbing oleh satu dosen wali.
d.
Many to Many
Kardinalitas Many to Many terjadi apabila banyak
entitas berhubungan dengan banyak entitas yang berbeda. Contohnya banyak
mahasiswa diajar oleh banyak dosen.
DDL & DML
Dalam, basis data kita sering mengenal istilah RDBMS. RDBMS adalah kependekan dari Relational Database Management System. RDBMS adalah program aplikasi yang digunakan dalam mengelola basis data. Hampir semua aplikasi database relational tersebut, seperti MySQL, Oracle, dBase dan Microsoft-Acces s, menggunakan SQL untuk menangani perintah-perintah dalam operasional database.
Apa itu Structured Query Language (SQL)?
SQL (Structured Query Language) adalah bahasa pemrograman
khusus yang digunakan untuk memanajemen data dalam RDBMS. SQL biasanya berupa
perintah sederhana yang berisi instruksi-instruksi untuk manipulasi data.
Perintah SQL ini sering juga disingkat dengan sebutan ‘query‘.
Secara umum, SQL terdiri dari dua bahasa, yaitu Data Definition Language (DDL) dan Data Manipulation Language (DML).
1. Data Definition Language (DDL)
DDL digunakan untuk mendefinisikan,
mengubah, serta menghapus basis data dan objek-objek yang diperlukan
dalam basis data. Secara umum, DDL yang digunakan adalah sebagai berikut :
a.
CREATE
CREATE digunakan untuk membuat basis data maupun objek-objek basis data.
SQL yang umum digunakan adalah:
·
CREATE DATABASE
untuk membuat sebuah basis data baru
Contoh :
CREATE DATABASE perpustakaan;
·
CREATE TABLE untuk membuat tabel baru pada basis
data yang digunakan
Contoh :
CREATE TABLE anggota(
id_anggota varchar(5) primary key,
nama_anggota varchar(20) not null,
usia_anggota varchar(5) not null,
alamat_anggota varchar(25) not null,
kontak_anggota varchar(15) not null
);
b.
USE
USE digunakan untuk menggunakan objek yang diinginkan. SQL yang umum
digunakan adalah:
·
USE database untuk menggunakan database
Contoh :
USE perpustakaan;
c.
ALTER
ALTER digunakan untuk mengubah objek yang sudah ada. SQL yang umum
digunakan adalah:
·
ALTER
TABLE untuk mengubah nama tabel
Contoh :
ALTER TABLE pegawai RENAME TO karyawan;
·
ALTER TABLE
untuk menambah kolom
Contoh :
ALTER TABLE anggota ADD COLUMN
jk_anggota varchar(15) not null;
·
ALTER
TABLE untuk mengganti kolom
Contoh :
ALTER TABLE anggota MODIFY usia_anggota int;
·
ALTER
TABLE untuk menghapus kolom
Contoh :
ALTER TABLE buku DROP COLUMN jenis;
d.
DROP
DROP digunakan untuk menghapus objek yang ada. SQL yang umum digunakan
adalah:
·
DROP TABLE
untuk menghapus tabel
Contoh :
DROP TABLE pegawai;
·
DROP DATABASE untuk menghapus database
Contoh :
DROP DATABASE perpustakaan;
2. Data Manipulation Language (DML)
DML adalah perintah-perintah yang digunakan
untuk mengubah, manipulasi dan mengambil data pada basis data. Tindakan seperti
menghapus, mengubah, dan mengambil data menjadi bagian dari DML. Secara umum,
DML yang digunakan adalah sebagai berikut :
a.
INSERT
INSERT digunakan untuk menambahkan data baru ke dalam tabel yang ada di
database. SQL yang umum digunakan adalah:
·
INSERT INTO
Cara Langsung :
Contoh :
INSERT INTO pegawai VALUES
('P304','Neni
Sulistiani',30),
('P406','Elis Liana',25),
('P170','Iden Darmana',35),
('P295','Tedi
Juandi',33);
Cara Tidak Langsung
:
Contoh :
INSERT INTO pegawai(id_pegawai, nama_pegawai, usia_pegawai)VALUES
('P304','Neni Sulistiani',30),
('P406','Elis Liana',25),
('P170','Iden
Darmana',35),
('P295','Tedi
Juandi',33);
b.
SELECT
SELECT digunakan untuk pengambilan data dari objek yang ada di database
untuk ditampilkan atau dimanipulasi. SQL yang umum digunakan adalah:
·
SELECT *FROM untuk menampilkan seluruh isi tabel
Contoh :
SELECT *FROM buku;
·
SELECT *FROM WHERE untuk menampilkan isi tabel
dengan klausa where
Contoh :
SELECT *FROM pegawai WHERE nama_pegawai='Neni Sulistiani';
·
SELECT FROM untuk menampilkan field tertentu
yang ada pada tabel
Contoh :
SELECT nama_buku FROM buku;
·
SELECT FROM WHERE untuk menampilkan data yang
diambil dari beberapa tabel
Contoh :
SELECT a.id_anggota, a.nama_anggota, b.kd_buku, b.nama_buku
FROM anggota a, buku b,
meminjam c
WHERE a.id_anggota=c.id_anggota and b.kd_buku=c.kd_buku;
·
SELECT *FROM WHERE dengan operator AND dan OR untuk
mengambil data tertentu dengan syarat atau kondisi lebih dari satu, dan apabila
semua syarat terpenuhi
Contoh :
SELECT *FROM pegawai WHERE id_pegawai='P304' AND
nama_pegawai='Neni Sulistiani';
Contoh :
SELECT *FROM pegawai WHERE id_pegawai='P304' OR usia_pegawai=30;
·
SELECT *FROM WHERE dengan operator BETWEEN dan NOT BETWEEN untuk menyaring data dengan rentang tertentu (memiliki
jangkauan)
Contoh :
SELECT *FROM pegawai WHERE usia_pegawai BETWEEN 30 AND 40;
Contoh :
SELECT *FROM pegawai WHERE usia_pegawai NOT BETWEEN 30 AND 40;
·
SELECT *FROM WHERE dengan operator LIKE dan NOT
LIKE untuk menseleksi data dengan kriteria mengandung kata atau klausa yang
didefinisikan oleh LIKE.
Apabila kata atau klausa berada di akhir :
Contoh :
SELECT *FROM pegawai WHERE nama_pegawai LIKE ‘%i’;
Apabila
kata atau klausa berada di awal :
Contoh
:
SELECT *FROM pegawai WHERE nama_pegawai LIKE ‘i%’;
Apabila
kata atau klausa berada di tengah :
Contoh :
SELECT *FROM pegawai WHERE nama_pegawai LIKE ‘%lis%’;
*NOTE : Penggunaan NOT LIKE (untuk
yang tidak memiliki kata atau klausa yang dimaksud) sama dengan penggunaan LIKE
di atas.
·
SELECT *FROM WHERE dengan operator ORDER BY
untuk mengurutkan data
Contoh :
SELECT *FROM buku ORDER BY
nama_buku;
·
SELECT *FROM WHERE dengan operator ASC dan DESC
untuk mengurutkan data yang ditampilkan secara menaik atau menurun
Contoh :
SELECT *FROM buku ORDER BY
nama_buku ASC;
Contoh
:
SELECT *FROM buku ORDER BY nama_buku DESC;
c.
UPDATE
UPDATE untuk mengubah atau memperbarui data yang sudah ada. SQL yang umum
digunakan adalah:
·
UPDATE SET WHERE untuk memperbarui data pada
field yang ada
Contoh :
UPDATE pegawai SET usia_pegawai=32 WHERE id_pegawai='P295';
d.
DELETE
DELETE untuk menghapus atau menghilangkan data yang sudah ada. SQL yang
umum digunakan adalah:
·
DELETE FROM untuk menghapus baris data (record)
dari tabel
Contoh :
DELETE FROM pegawai WHERE
id_pegawai='P170';
AGREGASI & GROUPING
1. Agregasi
Agregasi dalam SQL berisi fungsi-fungsi matematika sederhana yang
digunakan untuk melakukan perhitungan dari kumpulan data yang ada. Fungsi agregasi
yang biasa digunakan adalah :
a.
AVG
Fungsi ini digunakan untuk
menghasilkan nilai rata-rata sekelompok nilai dari sebuah
kolom dengan data numerik.
Perintah umum yang digunakan :
Contoh
:
SELECT AVG(usia_pegawai) FROM
pegawai;
b.
COUNT
Fungsi ini digunakan untuk
menghasilkan nilai jumlah data (baris/record) dari
sekelompok data pada tabel.
Perintah umum yang digunakan :
Contoh
:
SELECT COUNT(nama_pegawai) FROM
pegawai;
c.
MAX
Fungsi ini
digunakan untuk menghasilkan nilai tertinggi dari sebuah kolom dengan data numerik. Perintah umum yang
digunakan :
Contoh :
SELECT MAX(usia_pegawai) FROM
pegawai;
d.
MIN
Fungsi ini
digunakan untuk menghasilkan nilai terendah dari sebuah kolom dengan data numerik. Perintah umum yang
digunakan :
Contoh :
SELECT MIN(usia_pegawai) FROM
pegawai;
e.
SUM
Fungsi ini
digunakan untuk menghasilkan nilai total jumlah sekelompoknilai dari sebuah kolom dengan data numerik. Perintah
umum yang digunakan :
Contoh :
SELECT SUM(usia_pegawai) FROM
pegawai;
f.
ROUND
Fungsi ini
digunakan untuk melengkapi bidang numerik dengan pembatasan jumlah desimal yang
ditentukan. Perintah umum yang digunakan :
Contoh :
SELECT ROUND
(AVG(usia_pegawai),2) FROM pegawai;
g.
STDDEV
POP
Fungsi ini
digunakan untuk menghasilkan nilai standart deviasi populasi atau simpangan
baku. Perintah umum yang digunakan :
Contoh :
SELECT STDDEV_POP(usia_pegawai) FROM pegawai;
h.
VAR POP
Fungsi ini
digunakan untuk menghasilkan nilai standart varian populasi. Perintah umum yang
digunakan :
Contoh :
SELECT VAR_POP(usia_pegawai)
FROM pegawai;
2.
Grouping
Grouping merupakan fungsi untuk
mengelompokkan suatu data pada tabel berdasarkan salah satu field yang
diperlukan dari tabel tersebut. Fungsi grouping yang biasa digunakan
adalah :
a.
ORDER BY
Order by adalah
perintah yang digunakan untuk menampilkan data secara
terurut
berdasarkan nilai tertentu. Order by dikelompok menjadi 2 jenis yaitu
ascending (data
diurutkan dari yang terkecil ke terbesar) dan descending(data
diurutkan dari
yang terbesar ke terkecil). Perintah umum yang digunakan :
Contoh :
SELECT *FROM pegawai ORDER BY
usia_pegawai ASC;
Contoh :
SELECT *FROM pegawai ORDER BY
usia_pegawai DESC;
b.
GROUP BY
Group by adalah
perintah yang digunakan untuk mengelompokan beberapa baris data berdasarkan
kolom yang bernilai sama. Perintah umum yang digunakan :
Contoh :
SELECT *FROM buku GROUP BY
jenis_buku;
c.
HAVING
Pada saat
menggunakan fungsi agregat, terkadang diperlukan klausa WHERE untuk
menspesifikasikan hasil. Namun, penggunaan fungsi WHERE tidak boleh mengandung
fungsi agregat. Oleh karena itu, dapat digunakan fungsi HAVING yang memiliki
kemiripan penggunaan dengan WHERE. Perintah umum yang digunakan :
Contoh :
SELECT nama_pegawai FROM pegawai GROUP BY id_pegawai HAVING
AVG(usia_pegawai)>25;
d.
VIEW
View dapat
disebut sebagai sebuah table semu/bayangan. Data-data pada table view dapat
merupakan gabungan dari data pada tabel-tabel lain. View dapat digunakan untuk
membatasi pengaksesan atas sebuah table tertentu, jadi user hanya boleh melihat
table yang berisi data-data secara spesifik. Perintah umum yang digunakan :
Contoh :
CREATE VIEW V_perpus AS SELECT SELECT a.id_anggota,
a.nama_anggota, b.kd_buku, b.nama_buku, c.tgl_pinjam, c.tgl_kembali
FROM anggota as a, buku as b,
meminjam as c
Untuk
menampilkan view yang telah dibuat :
Contoh :
SELECT
*FROM V_perpus;
0 komentar:
Posting Komentar