Modul Basis Data
SQL DAN RDBMS
Fitria Claudya Lahinta, SST, MT
Politeknik Negeri Manado
Oktober 2020
BASIS DATA - SQL & RDBMS
1. Pengenalan SQL
Apa itu SQL? SQL adalah Structured Query Language atau Bahasa standar untuk mengakses
dan memanipulasi basis data. Di dalamnya termasuk pembuatan, penghapusan,
pengambilan baris, modifikasi baris dll. SQL menjadi standar ANSI pada 1986 dan ISO pada
1987.
SQL juga merupakan Bahasa standar untuk RDBMS (Relational Database Management
System) seperti pada MySQL, MS Access, Oracle dsb. SQL dapat mengerjakan beberapa
perintah dalam pengolahan basis data diantara lain:
- Dapat menjalankan query dari basis data
- Dapat mengambil data dari basis data
- Dapat memasukkan data pada basis data
- Dapat mengubah data pada basis data
- Dapat menghapus data pada basis data
- Dapat membuat basis data baru
- Dapat membuat tabel pada basis data
- Dapat menyimpan prosedur pada basis data
- Dapat membuat tampilan pada basis data
- Dapat mengatur izin pada tabel, prosedur dan tampilan
Arsitektur SQL secara umum dapat dilihat pada diagram alur di bawah:
Gambar 1.1 Diagram Alur SQL
Diagram alur di atas menjelaskan proses dari SQL mulai dari kueri, masuk ke dalam proses
yang ditambah dengan optimizer dilanjutkan pada proses dalam DBMS engine yang
dilengkapi File Manager dan Transaction Manager akan dilanjutkan pada basis data fisis.
FITRIA CLAUDYA LAHINTA, SST, MT 1
BASIS DATA - SQL & RDBMS
2. Perintah SQL
Standar perintah SQL ada beberapa yaitu CREATE, SELECT, INSERT, UPDATE, DELETE,
DROP. Perintah ini dapat dijabarkan melalui hakekatnya masing-masing:
DDL – DATA DEFINITON LANGUAGE
1. CREATE
Membuat tabel, tampilan, atau apapun yang ada di database.
2. ALTER
Memodifikasi objek basis data, seperti tabel.
3. DROP
Menghapus tabel dan isinya, tampilan atau apapun yang ada di database.
DML – DATA MANIPULATION LANGUAGE
1. SELECT
Mengambil/menampilkan data yang tersimpan pada satu tabel atau lebih.
2. INSERT
Menyimpan data ke dalam tabel.
3. UPDATE
Mengubah data.
4. DELETE
Menghapus data.
DCL – DATA CONTROL LANGUAGE
1. GRANT
Memberi izin kepada user/pengguna basis data.
2. REVOKE
Menolak izin user yang sudah di berikan.
FITRIA CLAUDYA LAHINTA, SST, MT 2
BASIS DATA - SQL & RDBMS
3. SQL – RDBMS – TABLE
Data dalam RDBMS disimpan pada objek basis data bernama Tabel.
TABEL
Tabel merupakan kumpulan dari beberapa data dan mempunyai banyak sekali ba ris dan
kolom yang merepresentasikan kumpulan data tersebut.
ID Name Address City Postal Country
1 Maria Obere Str. 57 Berlin 12209 Germany
2 Ana Constitución 2222 México D.F. 05021 Mexico
3 Antonio Mataderos 2312 México D.F. 05023 Mexico
4 Thomas 120 Hanover Sq. London WA1 1DP UK
5 Christina Berguvsvägen 8 Luleå S-958 22 Sweden
6 Hanna Forsterstr. 57 Mannheim 68306 Germany
7 Citeaux 24, place Kléber Strasbourg 67000 France
8 Martín C/ Araquil, 67 Madrid 28023 Spain
9 Laurence 12, rue des Bouchers Marseille 13008 France
10 Elizabeth 23 Tsawassen Blvd. Tsawassen T2F 8M4 Canada
FIELD
Tiap-tiap tabel di pecah menjadi entitas yang lebih kecil disebut Fields. Field pada tabel
Customer di atas terdiri dari ID, Name, Address, City, Postal, Country. Field adalah sebuah
kolom pada tabel yang diperuntukkan mempertahankan informasi spesifik dalam setiap
catatan di tabel.
ID Name Address City Postal Country
RECORD/ROW
Record, atau sering disebut dengan baris data adalah entri individu yang ada pada tabel.
Pada tabel di atas ada 10 baris data yang menyimpan informasi per individu.
1 Maria Obere Str. 57 Berlin 12209 Germany
COLUMN
Kolom adalah entitas vertikal pada tabel yang memuat informasi spesifik dari field.
Name
Maria
Ana
Antonio
Thomas
Christina
Hanna
Citeaux
Martín
Laurence
Elizabeth
FITRIA CLAUDYA LAHINTA, SST, MT 3
BASIS DATA - SQL & RDBMS
4. SQL CONSTRAINTS
Constraints adalah aturan yang diterapkan pada kolom data pada tabel. Ini digunakan
untuk membatasi jenis data yang bias masuk ke dalam tabel. Ini memastikan keakuratan
dan keandalan data dalam basis data. Constraints atau Batasan dapat diterapkan pada level
kolom dan tabel, dimana pada level kolom, maka hanya akan diterapkan pada satu kolom,
sedangkan untuk tabel akan diterapkan pada seluruh tabel.
Berikut adalah beberapa contoh constraints pada SQL:
- NOT NULL
Kolom tidak dapat memiliki NULL value. NULL disini merupakan value, kolom yang
berisi NULL mempunyai field dengan value kosong.
- DEFAULT
Memberikan nilai default untuk kolom jika tidak ada yang ditentukan.
- UNIQUE
Memastikan bahwa nilai di tiap kolom berbeda/tidak ada yang sama
- PRIMARY KEY
Secara unik memberikan identitas pada setiap baris/record dalam tabel
- FOREIGN KEY
Secara unik memberikan identitas pada setiap baris/record pada tabel lain
- CHECK CONSTRAINTS
Memastikan bahwa semua nilai pada kolom memenuhi kondisi yang ditetapkan
- INDEX
Digunakan untuk membuat dan mengambil data dari basis data secara cepat.
5. DATA INTEGRITY
Integritas pada data dimaksudkan untuk menjaga basis data agar tetap
- ENTITY
Tidak ada duplikasi baris pada tabel (unique)
- DOMAIN
Menerapkan entri valid untuk kolom tertentu dengan membatasi tipe, format,
atau nilai
- REFERENTIAL
Baris yang digunakan pada data lain tidak dapat dihapus.
- USER-DEFINED
Tambahan – Penerapan normalisasi dalam basis data juga diperlukan untuk efisiensi dan
keandalan dalam pengaksesan basis data. Dengan cara menghapus data-data duplikasi dan
yang tidak perlu(redundant) yang dibagi dalam 3 level normalisasi.
FITRIA CLAUDYA LAHINTA, SST, MT 4
BASIS DATA - SQL & RDBMS
6. DML SYNTAX
CREATE AND DROP DATABASE
CREATE DATABASE databasename; DROP DATABASE databasename;
contoh contoh
CREATE DATABASE testDB DROP DATABASE testDB
CREATE, ALTER, DROP TABLE
CREATE TABLE table_name ( CREATE TABLE Persons (
column1 datatype, PersonID int,
column2 datatype, LastName varchar(255),
column3 datatype, FirstName varchar(255),
Column4 datatype, Address varchar(255),
.... City varchar(255)
); );
ALTER TABLE table_name ALTER TABLE Customers
ADD column_name datatype; ADD Email varchar(255);
ALTER TABLE table_name ALTER TABLE Customers
MODIFY COLUMN column_name MODIFY COLUMN Email varchar(10);
datatype;
ALTER TABLE table_name ALTER TABLE Customers
DROP COLUMN column_name; DROP COLUMN Email;
DROP TABLE table_name; DROP TABLE Shippers;
TRUNCATE TABLE table_name; TRUNCATE TABLE Shippers;
FITRIA CLAUDYA LAHINTA, SST, MT 5