552d0 sistem basis data 6
Structured Query Language (SQL)
Pengenalan SQL
SQL Berfungsi sebagai bahasa query
interaktif sekaligus juga sebagai bahasa
pemrograman basis data.
♦ SQL meliputi:
• Definisi data
• Manipulasi data
♦ SQL relatif mudah untuk dipelajari
♦ SQL standar bentuk penulisannya
mengikuti aturan ANSI.
Tipe Data SQL
Tipe Data
Format
Numeric
NUMBER(Panjang,Des)
INTEGER
SMALLINT
DECIMAL(Panjang,Des)
Character
CHAR(Panjang)
VARCHAR(Panjang)
Date
DATE
Perintah Definisi Data
Model Basis Data.
♦ Contoh basis data sederhana - Nama
basis data PERWALIAN, terdiri dari dua
buah tabel yaitu WALI dan MAHASISWA.
• Setiap mahasiswa dibimbing oleh seorang
dosen wali.
• Seorang dosen wali memiliki beberapa orang
mahasiswa bimbingan.
1
WALI
M
Membimbing
MAHASISWA
Gambar 3.1. Relasi antara WALI dan MAHASISWA
Perintah Definisi Data
♦ Tabel WALI berisi data:
•
•
•
•
Kode wali
nama wali
Nomor induk pegawai
Pangkat / jabatan fungsional
♦ Tabel MAHASISWA berisi data:
•
•
•
•
•
Nomor mahasiswa
Nama mahasiswa
SKS yang ditempuh
Indeks Prestasi Kumulatif (IPK)
Kode wali
Perintah Definisi Data
Tabel 3.1. Kamus Data untuk Basis Data PERWALIAN
Nama
Tabel
Nama
Atribut
Mahasiswa Nomhs
Nama
SKS
IPK
Kd_Wali
Wali
Kd_Wali
NIP
Nama
Jbt_Fng
Uraian
Tipe
Format
Nomor mhs
Nama mhs
Jumlah SKS
IP.Kumulatif
Kode wali
Char(9)
Varchar(22)
Byte
Number(4,2)
Number(2)
999999999
Xxxxxxxxx
99
9.99
99
Kode wali
No. Pegawai
Nama wali
Fungsional
Number(2)
Char(9)
Varchar(24)
Varchar(15)
99
999999999
Xxxxxxxxx
Xxxxxxxxx
Range PK/ Tabel
FK Ref.
PK
12-24
0.00-4.00
1-99
FK
1-99
PK
Wali
Perintah Definisi Data
Membuat Struktur Basis Data
CREATE SCHEMA AUTORIZATION ;
• Contoh:
CREATE SCHEMA AUTORIZATION RONALD;
CREATE DATABASE ;
• Contoh:
CREATE DATABASE PERWALIAN;
Perintah Definisi Data
Membuat Struktur Tabel
CREATE TABEL (
);
Perintah Definisi Data
•
Contoh:
CREATE TABEL WALI
(KD_WALI
NIP
NAMA
INTEGER(2)
CHAR(9)
VARCHAR(24)
JBT_FNG
VARCHAR(15)
PRIMARY KEY (KD_WALI));
NOT NULL
NOT NULL,
NOT NULL,
UNIQUE,
Perintah Definisi Data
•
Contoh:
CREATE TABEL MAHASISWA
(NOMHS
CHAR(9)
NAMA
VARCHAR(22)
SKS
INTEGER(2)
IPK
DECIMAL(4,2)
KD_WALI
INTEGER(2)
PRIMARY KEY (NOMHS),
NOT NULL
NOT NULL,
NOT NULL,
NOT NULL,
NOT NULL,
FOREIGN KEY KD_WALI (KD_WALI)
UNIQUE,
Perintah Definisi Data
Batasan Integritas SQL
♦ Integritas Entitas
• PRIMARY KEY (Kunci Utama)
• NOT NULL and UNIQUE
♦ Integritas Referensial
• FOREIGN KEY
• ON DELETE
• ON UPDATE
Perintah SQL
Tabel 3.2. Cakupan Perintah SQL
Perintah
INSERT
SELECT
COMMIT
Penjelasan
Berfungsi untuk memasukkan data awal pada tabel atau
dapat juga untuk menambah data.
Berfungsi untuk menampilkan isi satu tabel atau beberapa
tabel sekaligus.
Berfungsi untuk menyimpan hasil pekerjaan kedalam
media penyimpan (disk).
UPDATE
Berfungsi untuk melakukan perubahan data.
DELETE
Berfungsi untuk menghapus satu atau beberapa baris isi
tabel.
Berfungsi untuk mengembalikan isi tabel basis data ke
bentuk aslinya, berdasarkan perintah COMMIT yang
terakhir kali dilakukan.
ROLLBACK
Manajemen Data Dasar
Pemasukan Data
INSERT INTO VALUES(harga atribut1,
harga atribut2, . . . . dan seterusnya);
• Contoh:
INSERT INTO WALI VALUES (5, ‘095065123’,
’ Ir. Satriyo Madya, MSc.’, ’Lektor Kepala’);
• Contoh:
INSERT INTO MAHASISWA VALUES (‘111900555’,
’ Siswanto’, 18, 2.48, 5);
Form Input Data Wali
Gambar 3.1. Form input data wali
Manajemen Data Dasar
Menyimpan Isi Tabel
COMMIT ;
• Contoh:
COMMIT WALI;
Menampilkan Isi Tabel
SELECT FROM
WHERE ;
• Contoh:
SELECT * FROM WALI;
Manajemen Data Dasar
Mengedit Isi Tabel
UPDATE
SET =
WHERE ;
• Contoh:
UPDATE WALI SET KD_WALI=7 WHERE KD_WALI=5;
Mengembalikan Isi Tabel
ROLLBACK;
Manajemen Data Dasar
Menghapus Record (Baris Tabel)
DELETE FROM
WHERE ;
• Contoh:
DELETE FROM WALI WHERE KD_WALI=2;
DELETE FROM WALI WHERE FUNGSIONAL=‘Lektor’;
DELETE FROM WALI WHERE NIP=‘095067120’;
DELETE FROM MAHASISWA WHERE IPK5;
SELECT NOMHS, NAMA, SKS FROM MAHASISWA
WHERE IPK>2.5;
SELECT NOMHS, NAMA, IPK FROM MAHASISWA
WHERE SKS3.00 AND SKS>20;
SELECT NOMHS, NAMA, IPK FROM MAHASISWA
WHERE SKS
Pengenalan SQL
SQL Berfungsi sebagai bahasa query
interaktif sekaligus juga sebagai bahasa
pemrograman basis data.
♦ SQL meliputi:
• Definisi data
• Manipulasi data
♦ SQL relatif mudah untuk dipelajari
♦ SQL standar bentuk penulisannya
mengikuti aturan ANSI.
Tipe Data SQL
Tipe Data
Format
Numeric
NUMBER(Panjang,Des)
INTEGER
SMALLINT
DECIMAL(Panjang,Des)
Character
CHAR(Panjang)
VARCHAR(Panjang)
Date
DATE
Perintah Definisi Data
Model Basis Data.
♦ Contoh basis data sederhana - Nama
basis data PERWALIAN, terdiri dari dua
buah tabel yaitu WALI dan MAHASISWA.
• Setiap mahasiswa dibimbing oleh seorang
dosen wali.
• Seorang dosen wali memiliki beberapa orang
mahasiswa bimbingan.
1
WALI
M
Membimbing
MAHASISWA
Gambar 3.1. Relasi antara WALI dan MAHASISWA
Perintah Definisi Data
♦ Tabel WALI berisi data:
•
•
•
•
Kode wali
nama wali
Nomor induk pegawai
Pangkat / jabatan fungsional
♦ Tabel MAHASISWA berisi data:
•
•
•
•
•
Nomor mahasiswa
Nama mahasiswa
SKS yang ditempuh
Indeks Prestasi Kumulatif (IPK)
Kode wali
Perintah Definisi Data
Tabel 3.1. Kamus Data untuk Basis Data PERWALIAN
Nama
Tabel
Nama
Atribut
Mahasiswa Nomhs
Nama
SKS
IPK
Kd_Wali
Wali
Kd_Wali
NIP
Nama
Jbt_Fng
Uraian
Tipe
Format
Nomor mhs
Nama mhs
Jumlah SKS
IP.Kumulatif
Kode wali
Char(9)
Varchar(22)
Byte
Number(4,2)
Number(2)
999999999
Xxxxxxxxx
99
9.99
99
Kode wali
No. Pegawai
Nama wali
Fungsional
Number(2)
Char(9)
Varchar(24)
Varchar(15)
99
999999999
Xxxxxxxxx
Xxxxxxxxx
Range PK/ Tabel
FK Ref.
PK
12-24
0.00-4.00
1-99
FK
1-99
PK
Wali
Perintah Definisi Data
Membuat Struktur Basis Data
CREATE SCHEMA AUTORIZATION ;
• Contoh:
CREATE SCHEMA AUTORIZATION RONALD;
CREATE DATABASE ;
• Contoh:
CREATE DATABASE PERWALIAN;
Perintah Definisi Data
Membuat Struktur Tabel
CREATE TABEL (
);
Perintah Definisi Data
•
Contoh:
CREATE TABEL WALI
(KD_WALI
NIP
NAMA
INTEGER(2)
CHAR(9)
VARCHAR(24)
JBT_FNG
VARCHAR(15)
PRIMARY KEY (KD_WALI));
NOT NULL
NOT NULL,
NOT NULL,
UNIQUE,
Perintah Definisi Data
•
Contoh:
CREATE TABEL MAHASISWA
(NOMHS
CHAR(9)
NAMA
VARCHAR(22)
SKS
INTEGER(2)
IPK
DECIMAL(4,2)
KD_WALI
INTEGER(2)
PRIMARY KEY (NOMHS),
NOT NULL
NOT NULL,
NOT NULL,
NOT NULL,
NOT NULL,
FOREIGN KEY KD_WALI (KD_WALI)
UNIQUE,
Perintah Definisi Data
Batasan Integritas SQL
♦ Integritas Entitas
• PRIMARY KEY (Kunci Utama)
• NOT NULL and UNIQUE
♦ Integritas Referensial
• FOREIGN KEY
• ON DELETE
• ON UPDATE
Perintah SQL
Tabel 3.2. Cakupan Perintah SQL
Perintah
INSERT
SELECT
COMMIT
Penjelasan
Berfungsi untuk memasukkan data awal pada tabel atau
dapat juga untuk menambah data.
Berfungsi untuk menampilkan isi satu tabel atau beberapa
tabel sekaligus.
Berfungsi untuk menyimpan hasil pekerjaan kedalam
media penyimpan (disk).
UPDATE
Berfungsi untuk melakukan perubahan data.
DELETE
Berfungsi untuk menghapus satu atau beberapa baris isi
tabel.
Berfungsi untuk mengembalikan isi tabel basis data ke
bentuk aslinya, berdasarkan perintah COMMIT yang
terakhir kali dilakukan.
ROLLBACK
Manajemen Data Dasar
Pemasukan Data
INSERT INTO VALUES(harga atribut1,
harga atribut2, . . . . dan seterusnya);
• Contoh:
INSERT INTO WALI VALUES (5, ‘095065123’,
’ Ir. Satriyo Madya, MSc.’, ’Lektor Kepala’);
• Contoh:
INSERT INTO MAHASISWA VALUES (‘111900555’,
’ Siswanto’, 18, 2.48, 5);
Form Input Data Wali
Gambar 3.1. Form input data wali
Manajemen Data Dasar
Menyimpan Isi Tabel
COMMIT ;
• Contoh:
COMMIT WALI;
Menampilkan Isi Tabel
SELECT FROM
WHERE ;
• Contoh:
SELECT * FROM WALI;
Manajemen Data Dasar
Mengedit Isi Tabel
UPDATE
SET =
WHERE ;
• Contoh:
UPDATE WALI SET KD_WALI=7 WHERE KD_WALI=5;
Mengembalikan Isi Tabel
ROLLBACK;
Manajemen Data Dasar
Menghapus Record (Baris Tabel)
DELETE FROM
WHERE ;
• Contoh:
DELETE FROM WALI WHERE KD_WALI=2;
DELETE FROM WALI WHERE FUNGSIONAL=‘Lektor’;
DELETE FROM WALI WHERE NIP=‘095067120’;
DELETE FROM MAHASISWA WHERE IPK5;
SELECT NOMHS, NAMA, SKS FROM MAHASISWA
WHERE IPK>2.5;
SELECT NOMHS, NAMA, IPK FROM MAHASISWA
WHERE SKS3.00 AND SKS>20;
SELECT NOMHS, NAMA, IPK FROM MAHASISWA
WHERE SKS