SQL Berfungsi sebagai bahasa query
interaktif sekaligus juga sebagai bahasa
pemrograman basis data.
♦
SQL meliputi:
Pengenalan SQL
Pengenalan SQL
♦
SQL meliputi:
•
Definisi data
•
Manipulasi data
♦
SQL relatif mudah untuk dipelajari
♦
SQL standar bentuk penulisannya
Tipe Data SQL
Tipe Data SQL
Numeric
NUMBER(Panjang,Des)
INTEGER
SMALLINT
Tipe Data
Format
SMALLINT
DECIMAL(Panjang,Des)
Character
CHAR(Panjang)
VARCHAR(Panjang)
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
Perintah Definisi Data
Perintah Definisi Data
•
Setiap mahasiswa dibimbing oleh seorang
dosen wali.
•
Seorang dosen wali memiliki beberapa orang
mahasiswa bimbingan.
[image:4.842.163.747.138.493.2]WALI
MembimbingMAHASISWA
Gambar 3.1. Relasi antara WALI dan MAHASISWA
♦
Tabel WALI berisi data:
•
Kode wali
•
nama wali
•
Nomor induk pegawai
•
Pangkat / jabatan fungsional
Perintah Definisi Data
Perintah Definisi Data
♦
Tabel MAHASISWA berisi data:
•
Nomor mahasiswa
•
Nama mahasiswa
•
SKS yang ditempuh
Perintah Definisi Data
Perintah Definisi Data
Nama Tabel
Nama Atribut
Uraian Tipe Format Range PK/ FK
Tabel Ref.
[image:6.842.180.756.202.458.2]Mahasiswa Nomhs Nomor mhs Char(9) 999999999 PK Nama Nama mhs Varchar(22) Xxxxxxxxx
Tabel 3.1. Kamus Data untuk Basis Data PERWALIAN
Nama Nama mhs Varchar(22) Xxxxxxxxx
SKS Jumlah SKS Byte 99 12-24 IPK IP.Kumulatif Number(4,2) 9.99 0.00-4.00
Kd_Wali Kode wali Number(2) 99 1-99 FK Wali Wali Kd_Wali Kode wali Number(2) 99 1-99 PK
Membuat Struktur Basis Data
CREATE SCHEMA AUTORIZATION
<creator>;
•
Contoh:
CREATE SCHEMA AUTORIZATION RONALD;
Perintah Definisi Data
Perintah Definisi Data
CREATE SCHEMA AUTORIZATION RONALD;
CREATE DATABASE
<nama database>;
•
Contoh:
Membuat Struktur Tabel
CREATE TABEL
<nama tabel>(
<nama atribut1 dan karakteristik atribut1,
nama atribut2 dan karakteristik atribut2,
Perintah Definisi Data
Perintah Definisi Data
•
Contoh:
CREATE TABEL WALI
(KD_WALI INTEGER(2) NOT NULL UNIQUE, NIP CHAR(9) NOT NULL,
Perintah Definisi Data
Perintah Definisi Data
NAMA VARCHAR(24) NOT NULL, JBT_FNG VARCHAR(15)
•
Contoh:
CREATE TABEL MAHASISWA
(NOMHS CHAR(9) NOT NULL UNIQUE, NAMA VARCHAR(22) NOT NULL,
Perintah Definisi Data
Perintah Definisi Data
SKS INTEGER(2) NOT NULL, IPK DECIMAL(4,2) NOT NULL, KD_WALI INTEGER(2) NOT NULL, PRIMARY KEY (NOMHS),
Batasan Integritas SQL
♦
Integritas Entitas
•
PRIMARY KEY (Kunci Utama)
•
NOT NULL and UNIQUE
Perintah Definisi Data
Perintah Definisi Data
•
NOT NULL and UNIQUE
♦
Integritas Referensial
•
FOREIGN KEY
•
ON DELETE
Perintah SQL
Perintah SQL
Perintah Penjelasan
INSERT Berfungsi untuk memasukkan data awal pada tabel atau dapat juga untuk menambah data.
SELECT Berfungsi untuk menampilkan isi satu tabel atau beberapa
Tabel 3.2. Cakupan Perintah SQL
SELECT Berfungsi untuk menampilkan isi satu tabel atau beberapa tabel sekaligus.
COMMIT 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.
Pemasukan Data
INSERT INTO
<nama tabel> VALUES(harga atribut1,
harga atribut2, . . . . dan seterusnya);
•
Contoh:
Manajemen Data Dasar
Manajemen Data Dasar
•
Contoh:
INSERT INTO WALI VALUES (5, ‘095065123’, ’ Ir. Satriyo Madya, MSc.’, ’Lektor Kepala’);
•
Contoh:
Form Input Data Wali
Form Input Data Wali
Menyimpan Isi Tabel
COMMIT
<nama tabel>;
•
Contoh:
COMMIT WALI;
Manajemen Data Dasar
Manajemen Data Dasar
COMMIT WALI;
Menampilkan Isi Tabel
SELECT <daftar atribut> FROM
<nama tabel>
WHERE
<kondisi>;
•
Contoh:
Mengedit Isi Tabel
UPDATE
<nama tabel>
SET
<atribut> = <harga baru>
WHERE <kondisi>;
Manajemen Data Dasar
Manajemen Data Dasar
WHERE <kondisi>;
•
Contoh:
UPDATE WALI SET KD_WALI=7 WHERE KD_WALI=5;
Mengembalikan Isi Tabel
Menghapus Record (Baris Tabel)
DELETE FROM
<nama tabel>
WHERE
<kondisi>;
•
Contoh:
Manajemen Data Dasar
Manajemen Data Dasar
•
Contoh:
DELETE FROM WALI WHERE KD_WALI=2;
DELETE FROM WALI WHERE FUNGSIONAL=‘Lektor’; DELETE FROM WALI WHERE NIP=‘095067120’;
Menampilkan Sebagian Isi Tabel
SELECT
<daftar atribut>
FROM
<nama tabel>
WHERE
<kondisi>;
•
Contoh:
QUERIES
QUERIES
•
Contoh:
SELECT NIP, NAMA FROM WALI WHERE JBT_FNG=‘Lektor’;
Mathematical Operators
QUERIES
QUERIES
QUERIES
•
Contoh:
SELECT KD_WALI, NIP, NAMA FROM WALI WHERE JBT_FNG<>‘Lektor’;
SELECT NIP, NAMA, JBT_FNG FROM WALI WHERE KD_WALI>5;
WHERE KD_WALI>5;
SELECT NOMHS, NAMA, SKS FROM MAHASISWA WHERE IPK>2.5;
QUERIES
QUERIES
•
Contoh:
SELECT NOMHS, NAMA, SKS FROM MAHASISWA WHERE IPK>3.00 AND SKS>20;
SELECT NOMHS, NAMA, IPK FROM MAHASISWA WHERE SKS<18 OR IPK<2.00;
QUERIES
QUERIES
BETWEEN digunakan untuk menentukan range nilai
•
Contoh:
SELECT *
FROM MAHASISWA FROM MAHASISWA
WHERE IPK BETWEEN 2.00 AND 3.00;
SELECT *
FROM MAHASISWA
QUERIES
QUERIES
IS NULL digunakan untuk mengecek apakah suatu
atribut bernilai kosong (NULL)
•
Contoh:
SELECT *
FROM WALI
WHERE JBT_FNG IS NULL;
SELECT *
FROM MAHASISWA
LIKE digunakan untuk mengecek apakah suatu atribut
mengandung string/ karaker yang mirip
•
Contoh:
SELECT *
QUERIES
QUERIES
FROM WALI
WHERE NAMA LIKE ‘%SANTO%’;
SELECT *
FROM MAHASISWA
IN digunakan untuk mengecek apakah suatu nilai
suatu atribut terdapat dalam suatu daftar himpunan
nilai
•
Contoh:
SELECT *
QUERIES
QUERIES
SELECT *
FROM WALI
WHERE JBT_FNG IN (‘ASISTEN AHLI’, ‘LEKTOR’);
SELECT *
FROM MAHASISWA
EXIST digunakan untuk mengecek apakah suatu
atribut memiliki nilai.
•
Contoh:
SELECT *
QUERIES
QUERIES
FROM WALI
WHERE JBT_FNG EXIST;
SELECT *
FROM MAHASISWA
DISTINCT digunakan untuk menghilangkan duplikasi
pada saat menampilkan data.
•
Contoh:
SELECT DISTINCT JBT_FNG FROM WALI SELECT DISTINCT NILAI FROM NILAIMHS
QUERIES
QUERIES
SELECT DISTINCT NILAI FROM NILAIMHS
TOP
n
digunakan untuk menampilkan data sebanyak
n
baris pertama.
•
Contoh:
SELECT TOP 10 NAMA, NIP FROM WALI
QUERIES
QUERIES
GROUP BY digunakan untuk mengelompokkan data
berdasarkan item tertentu.
•
Contoh:
SELECT KD_BARANG, SUM(STOCK)
FROM BARANG GROUP BY KD_BARANG
SELECT KD_BARANG, HARGA, SUM(STOCK) FROM BARANG WHERE HARGA<=5000 GROUP BY KD_BARANG, HARGA
HAVING digunakan untuk memfilter baris-baris hasil
dari pengelompokkan.
SELECT KD_BARANG, HARGA, SUM(STOCK)