Anda di halaman 1dari 11

Nama : Mohamad Firzon Ainur Roziqin

NIM: 180535632548

RESUME BASIS DATA

Pengantar Basis Data

1. Pengertian basis data :


Basis : markas / tempat berkumpul / tempat bersarang / gudang
data : representasi dari fakta dunia yang mewakili suatu obyek yang direkam dalam bentuk
angka, huruf, simbol, teks, gambar, bunyi atau kombinasinya.
2. Tujuan Pemanfaatan basis data
Kecepatan dan Kemudahan (Speed), Efisiensi Ruang Penyimpanan (Space), Keakuratan
(Accuracy), Ketersediaan (Availability) Kelengkapan (CompletenessKeamanan (Security)
Kebersamaan (Sharability).
3. Komponen Basis Data
Hardware, Operating System, Database, DBMS, User, Optional Software.
4. Bahasa Basis Data
DDL: Create, Rename, Alter, Drop (menentukan struktur penyimpanan tabel)
DML: Insert, Delete, Update (manipulasi dan pengambilan data)
DCL: Grant, Revoke (merubah hak akses, memberikan roles, atau yang berhubungan dengan
keamanan database)

Basis Data relasional

1. Pengertian basis data relasional


Basis Data relasional menggunakan tabel dua dimensi yang terdiri atas baris dan kolom
untuk memberi gambaran sebuah berkas data yang memiliki manfaat yaitu bentuknya
sederhana dan ,mempermudah melakukan berbagai operasi data
2. Istilah dalam basis data relasional
Relasi: Sebuah tabel yang terdiri dari beberapa kolom dan beberapa baris
Atribut: Kolom pada sebuah relasi
Tupel : Baris pada sebuah relasi
Domain: Kumpulan nilai yang valid untuk satu atau lebih atribut
Derajat: Jumlah atribut dalam sebuah relasi
Cardinality: Jumlah tupel dalam sebuah relasi
3. Relational Key
Super key : Satu atribut/kumpulan atribut yang secara unik mengidentifikasi sebuah tupel di
dalam relasi
Candidate key :Atribut di dalam relasi yang biasanya mempunyai nilai unik
Primary key : Candidate key yang dipilih untuk mengidentifikasikan tupel secara unik dalam
relasi

Alternate key : Candidate key yang tidak dipilih sebagai primary key

Foreign key : Atribut dengan domain yang sama yang menjadi kunci utama pada sebuah
relasi tetapi pada relasi lain atribut tersebut hanya sebagai atribut biasa
4. Bahasa pada basis data relasional
Bahasa Formal : Bahasa query yang diterjemahkan dengan menggunakan simbol-simbol
matematis contohnya aljabar relasional(pemakai menspesifikasikan data apa yang
dibutuhkan dan bagaimana untuk mendapatkannya).
dan kalkulus relasional (pemakai menspesifikasikan data apa yang dibutuhkan tanpa
menspesifikasikan bagaimana untuk mendapatkannya).

Bahasa Komersial : Bahasa Query yang dirancang sendiri oleh programmer menjadi suatu
program aplikasi agar pemakai lebih mudah menggunakannya (user friendly). Contohnya
QUEL, QBE, SQL(Berbasis pada bahasa kalkulus relasional dan aljabar relasional)
5. Bahasa Basis Data Relasional
DB2  IBM
ORACLE  Oracle
SYBASE  Powersoft
INFORMIX  Informix
Microsoft Access  Microsoft
MySQL  MySQL AB

SQL (Struktur Query Language)

1. Pengertian
Query : perintah untuk mengakses data pada sistem basis data
SQL : Bahasa query baku untuk DBMS. (bahasa tingkat tinggi). SQL dibagi 2 yaitu DDL dan
DML
2. DDL
No. Perintah Implementasi Fungsi
1. CREATE CREATE DATABASE Membuat database

CREATE TABLE mahasiswa{ Membuat tabel


nama VARCHAR(8) NOT NULL
alamat VARCHAR(15) NOT NULL
nama orang tua CHAR(9) NOT NULL
tanggal lahir DATE }

CREATE INDEX karyawan ON karyawan (SSN) Membentuk berkas


index dari table
2. ALTER ALTER TABLE karyawan ADD pekerjaan Merubah struktur
CHAR(12); tabel
3. RENAME RENAME TABLE nama_tabel_lama TO Mengganti nama
nama_tabel_baru; tabel
4. DROP DROP TABLE nama_tabel Menghapus tabel

3. DML
Fungsi : Bahasa untuk mengakses, mengolah basis data, memanggil fungsi-fungsi agregasi
serta untuk melakukan query.
No Perintah Implementasi Fungsi
1. INSERT INSERT INTO Mahasiswa VALUES Memasukkan data di
(‘111’,’Adi Bangga’); dalam tabel
2. UPDATE UPDATE mahasiswa SET nama= ‘Adi Merubah data dalam
Bangga Sekali’ WHERE nama =“Adi tabel
Bangga”
3. DELETE DELETE FROM Mahasiswa WHERE nama = Menghapus data dalam
‘Adi’; tabel
4. SELECT SELECT*FROM mahasiswa; Menampilkan data
tabel
5. Fungsi SELECT avg (tinggi_badan) Membuat operasi
agregat (avg, from tinggi hitung.
min, max,
sum, count)

Relasi dan Join

1. Pengertian
Relationship: suatu hubungan antara beberapa entitas.
Join : kombinasi record dari dua atau lebih tabel di dalam basis data relasional dan
menghasilkan sebuah tabel (temporary) baru( joined table).
2. Jenis-Jenis Join
No. Jenis Implementasi Fungsi
1. Inner Join SELECT * FROM `tgllahir` INNER JOIN menemukan
tinggi ON tgllahir.kode=tinggi.kode persimpangan
(intersection) antara
dua buah tabel.
2. LEFT OUTER SELECT * FROM `tgllahir` LEFT OUTER mengembalikan semua
JOIN JOIN tinggi ON tgllahir.kode=tinggi.kode nilai dari tabel kiri
ditambah dengan nilai
dari tabel kanan yang
sesuai (atau NULL jika
tidak ada nilai yang
sesuai).
3. RIGHT SELECT * FROM `tgllahir` RIGHT OUTER pada dasarnya sama
OUTER JOIN JOIN tinggi ON tgllahir.kode=tinggi.kode seperti left join, namun
dalam bentuk
terbalik—kanan dan
kiri.
4. FULL OUTER SELECT * FROM `tgllahir` FULL OUTER pada hakekatnya
JOIN JOIN tinggi ON tgllahir.kode=tinggi.kode merupakan kombinasi
dari left dan right join.

5. CROSS JOIN SELECT * FROM `tgllahir` CROSS JOIN merupakan inner join
tinggi ON tgllahir.kode=tinggi.kode di mana kondisi join
selalu dievaluasi true

Sub Query

1. Definisi
Subquery (disebut juga subselect atau nested select/query atau inner- select) adalah
query SELECT yang ada di dalam perintah SQL lain— misalnya SELECT, INSERT, UPDATE,
atau DELETE.
2. Jenis-jenis Subquery
No. Jenis SubQuery Implementasi fungsi
1. Scalar SELECT * FROM `alamat` WHERE Subquery baris tunggal
Subquery kabupaten=(SELECT kabupaten (scalar) hanya
FROM alamat WHERE kode=4444) mengembalikan hasil satu
baris data.
Operator =, >, >=, <, <=,
atau <>.
2. Multi row SELECT d.kd_dosen, d.nama_dosen Subquery baris ganda
Subquery (IN) FROM dosen d WHERE d.kd_dosen (multiple-row)
IN (SELECT m.kd_dosen FROM mengembalikan lebih dari
matakuliah m) satu baris data.

3. Multi row Select * FROM matakuliah m Membandingkan suatu nilai


Subquery WHERE sks > ANY(SELECT sks FROM dengan setiap nilai yang
(ANY/SOME) matakuliah WHERE semester = 1) dikembalikan oleh subquery.
Operator = ANY ekuivalen
dengan IN.
Operator < ANY ekuivalen
dengan MAX (kurang dari
maks).
Operator > ANY ekuivalen
dengan MIN (lebih dari min).
4. Multi row SELECT * FROM matakuliah m Membandingkan suatu nilai
Subquery (ALL) WHERE sks > ALL(SELECT sks FROM dengan semua nilai yang
matakuliah WHERE semester = 6) dikembalikan oleh subquery.
Operator < ALL ekuivalen
dengan MIN (kurang dari
min).
Operator > ALL ekuivalen
dengan MAX (lebih dari
maks).
5. Multiple SELECT * FROM matakuliah WHERE Subquery kolom ganda
Column (matakuliah.semester, (multiple-column)
Subquery matakuliah.sks) IN (SELECT mengembalikan lebih dari
matakuliah.semester,
matakuliah,sks FROM matakuliah satu baris dan satu kolom
WHERE matakuliah.kd_mk = data.
'NINF601')
6. EXISTS SELECT * FROM mahasiswa digunakan pada correlated
WHERE EXISTS subquery untuk memeriksa
(SELECT kd_jur FROM jurusan apakah subquery
WHERE kd_jur = mengembalikan hasil atau
mahasiswa.kd_jur); tidak

Pemodelan Data(ERD)

1. Tujuan
menggambarkan konteks objek dan hubungannya, dan digunakan secara luas untuk
mengembangkan desain database awal.
2. Komponen ERD
No Nama Pengertian Contoh
.
1. Entitas Orang, tempat,
objek, event,
konsep.
2. Tipe Kategori / kelas
Entitas untuk instan
entitas sejenis.
Biasanya
dipresentasikan
sebagai suatu
Tabel.
3. Instan Individu anggota
Entitas suatu entitas,
misalnya Andi,
Rudy (orang),
Jakarta, Surabaya
(Kota), dsbnya.
Biasanya
direpresentasikan
sebagai baris data
dalam suatu tabel
(Record).
4. Atribut Ciri dan 1. Atribut Sederhana dan Komposit.
Karakteristik suatu
tipe entitas.
Biasanya
direpresentasikan
sebagai kolom
data dalam suatu
tabel (Field).
5. Instan Hubungan antar
Hubunga entitas. Biasanya 2. Atribut Identitas (key)
n direpresentasikan
dengan nilai
atribut (key) yang
sama dalam tabel -
tabel yang
merepresentasika
n entitas.
6. Tipe Kategori hubungan
Hubunga antar entitas (satu-
n ke-satu, satu-ke-
banyak, banyak- 3. Atribut Key Komposit
ke-banyak).

4. Atribut Bernilai Banyak


dan Atribut Derivat

5. Atribut Bernilai Ganda


dan juga Komposit

3. Notasi Dasar ERD


4. Relasi (Hubungan)
Tipe Hubungan : digambarkan sebagai belah ketupat dengan garis yang
menghubungkan tipe – tipe entitas.
Instan Hubungan : Menghubungkan instan – instan entitas spesifik.
Hubungan majemuk : dua entitas yang memiliki lebih dari satu hubungan.
Derajat Hubungan :
No. Derajat contoh
1. Unary
2. binary

3. ternary

5. Kardinalitas
No. Jenis Pengertian Contoh
1. Satu-ke- Setiap entitas dalam
Satu hubungan memiliki
satu dan hanya satu
entitas pasangan.
2. Satu-ke- Satu entitas di satu
Banyak pihak dalam suatu
hubungan dapat
memiliki beberapa
pasangan di pihak
lawannya, tetapi
entitas di pihak
lawannya hanya
boleh memiliki
maksimum satu
pasangan.

3. Banyak-ke- Entitas – entitas di


Banyak masing – masing sisi
dari hubungan dapat
memiliki beberapa
pasangan di sisi yang
lain.

4. Kosntrain Merupakan batasan


Kardinalitas jumlah instan dari
satu entitas yang
dapat atau harus
berasosiasi dengan
setiap instan dari
entitas yang lain.

Perancangan ERD

No. Langkah-langkah Penjabaran


1. Menentukan entitas Entitas adalah sesuatu yang nyata atau abstrak dimana
kita akan menyimpan data. Cara terbaik menentukan
entitas adalah menanyakan pada pemilik dan pengguna
sistem untuk mengetahui informasi yang ingin mereka
simpan dan hasilkan atau sumber lain.
2. Menentukan relasi Menentukan hubungan antar pasangan entitas
menggunakan matriks relasi, yaitu dengan menuliskan
entitas menurun pada sebuah kolom dan mendatar pada
sebuah tabel. Matrik relasi dapat dibuat dengan mengisi
kata kerja pada perpotongan dua entitas yang
berhubungan Masing-masing baris dan kolom harus
memiliki paling tidak satu relasi
3. Menggambar ERD sementara Dengan menggunakan kotak untuk entitas dan garis
untuk relasi maka dapat digambarkan ERD sementaranya
4. Menentukan kardinalitas Menentukan jumlah kejadian satu entitas untuk sebuah
kejadian pada entitas yang berhubungan, yaitu dengan
menggambarkan simbol yang menunjukkan jumlah
instansi minimum atau maksimum Jika ada satu instansi,
simbolnya adalah 1 dan jika lebih dari satu simbolnya
adalah kaki burung yang mengarah ke kotak
5. Menentukan key Menentukan atribut yang mengidentifikasi satu dan
hanya satu kejadian pada entitas yang berhubungan
6. Menggambar ERD berdasar Menghilangkan relasi many to many dan memasukkan
key primary key dan kunci tamu pada masing-masing relasi
7. Menentukan atribut Menuliskan field-field yang diperlukan oleh sistem
8. Pemetaan Atribut Untuk masing-masing atribut, memasangkan atribut
dengan satu entitas yang sesuai. Satu atribut kadang
harus dipetakan ke lebih dari satu entitas. Untuk
membedakannya maka harus diberikan nama yang
spesifik
9. Menggambar ERD dengan Mengatur ERD dari langkah 6 dengan menambah entitas
atribut atau relasi yang ditemukan pada langkah 8. Jika
dilakukan, aturlah entitas agar tidak ada garis yang
berpotongan
10. Periksa hasil Lihatlah diagram dari sudut pandang pemilik atau
pengguna sistem. Apakah ERD sudah menggambarkan
sistem yang akan dibangun?

TUGAS BESAR BASIS DATA 1

Pada tugas besar kami membuat sistem database kereta api. Di sistem itu terdapat banyak relasi
yang kompleks. Seperti halnya menentukan harga sesuai tujuan, kelas kereta api dan jenis
penumpang. Selain itu juga terdapat query untuk menghitung status pembayaran semua konsumen,
baik yang belum dan yang sudah dengan menggunakan fungsi agregat. Berikut contohnya

Source kode :

Before :

After

Anda mungkin juga menyukai