Bahasa Basis Data

advertisement
Bahasa Basis Data
Pertemuan III
Oleh:
Ilham Rais Arvianto, M.Pd
Bahasa Basis Data
Data Definition Language (DDL)
•
•
•
•
Pembuatan BD baru (create database)
PenghapusanBD (drop database)
Pembuatan tabel kedalam suatu BD (create table)
Penghapusan tabel dari suatu BD (drop table)
Data Manipulation Language (DML)
•
•
•
•
Penambahan data ke sebuah tabel (INSERT)
Pengambilan data dari sebuah tabel atau beberapa tabel (SELECT)
Pengubahan data dari sebuah table (UPDATE)
Penghapusan data dari sebuah table (DELETE)
SQL
Untuk melakukan operasi-operasi BD dapat
menggunakan subbahasa yang telah menjadi
standard untuk mengakses basis data yang
disebut SQL (Structured Query Language)
Tipe Domain dalam Bahasa Basis Data
Tipe
Char(n)
Keterangan
Tipe karakter dengan panjang yang tetap (n)
(fixed-length character)
Varchar(n)
Tipe karakter dengan panjang bervariasi.
Maksimum panjang n
Integer
Small integer
Int
Smallint
Numeric(p,d)
P menunjukkan jumlah digit bilangan dan
d menunjukkan jumlah digit di belakang decimal
Date
Tipe kalender
Time
Tipe hari dalam jam, menit, dan detik
Membuat DB Baru
Sintaks:
CREATE DATABASE NamaDatabase
Contoh:
CREATE DATABASE Perkuliahan
Mengaktifkan database
yang akan dibuatkan tabelnya
Sintaks:
USE NamaDatabase
Contoh:
USE Perkuliahan
Membuat Tabel Baru
Sintaks:
CREATE TABLE Nama_Tabel(
Nama_Field1 TipeData1 (LebarData1) [Ket1],
Nama_Field2 TipeData2 (LebarData2) [Ket2],
....
Nama_FieldNTipeDataN(LebarDataN) [KetN]
)
Tabel Mata_Kuliah
Kolom
Type Data
Kode_MK
Char(5)
Nama_MK
Varchar(20)
SKS
Integer
Sintaks:
CREATE TABLE Mata_kuliah (
Kode_MK Char(5),
Nama_MK Varchar(20),
Bobot Integer
)
Mengisi Data pada Tabel
Sintaks:
INSERT INTO Nama_Tabel
VALUES (Nilai1, Nilai2, …, Nilai-n);
Contoh:
INSERT INTO Mata_Kuliah
VALUES (‘01’,’ Kalkulus’, 3);
Menampilkan Tabel
Sintaks:
SELECT * FROM NameTable
Contoh:
SELECT * FROM Mata_Kuliah
Menghapus Tabel
Sintaks:
DROP TABLE NameTable
Contoh:
DROP TABLE Mata_Kuliah
Mengatur Supaya Data Selalu Diisi
Tabel Mata_Kuliah
Kolom
Type Data
Ket.
Kode_MK Char(5)
NOT NULL
Nama_MK Varchar(20) NOT NULL
SKS
Integer
NOT NULL
Cara I
Membuat konstrain NOT NULL pada saat tabel
dibuat & merupakan bagian dari definisi tabel.
Sintaks:
CREATE TABLE Mata_kuliah (
Kode_MK Char(5) NOT NULL,
Nama_MK Varchar(20) NOT NULL,
Bobot Integer NOT NULL
)
Cara II
Menambahkan konstrain NOT NULL pada table
yang sudah ada & belum mempunyai NOT NULL
Sintaks:
CREATE TABLE Mata_kuliah1 (
Kode_MK Char(5),
Nama_MK Varchar(20),
SKS Integer
)
ALTER TABLE Mata_kuliah
ALTER COLUMN Kode_MK Char(5) NOT NULL
ALTER TABLE Mata_kuliah
ALTER COLUMN Nama_MK Varchar(20) NOT NULL
ALTER TABLE Mata_kuliah
ALTER COLUMN SKS Integer NOT NULL
Cara II
Menambahkan Kolom Baru
Tabel Mata_Kuliah
Kolom
Kode_MK
Nama_MK
SKS
Kode_Dosen
Type Data
Ket.
Char(5)
NOT NULL
Varchar(20) NOT NULL
Integer
NOT NULL
Char(10)
Menambah Kolom Baru
Sintaks:
ALTER TABLE NameTable ADD NameField TypeData
Contoh:
ALTER TABLE Mata_Kuliah ADD Kode_Dosen
Char(10)
Menghapus Kolom
Tabel Mata_Kuliah
Kolom
Type Data
Ket.
Kode_MK Char(5)
NOT NULL
Nama_MK Varchar(20) NOT NULL
SKS
Integer
NOT NULL
Menghapus Kolom
Sintaks:
ALTER TABLE NameTable DROP COLUMN NameField
Contoh:
ALTER TABLE Mata_Kuliah DROP COLUMN
Kode_dosen
Mengganti Ukuran Kolom
Tabel Mata_Kuliah
Kolom
Kode_MK
Nama_MK
Bobot
Kode_Dosen
Type Data
Ket.
Char(5)
NOT NULL
Varchar(30) NOT NULL
Integer
NOT NULL
Char(10)
Mengganti Ukuran Kolom
Sintaks:
ALTER TABLE NameTable ALTER COLUMN NameField
TypeData
Contoh:
ALTER TABLE Mata_Kuliah ALTER COLUMN
Nama_MK Varchar(30)
Membuat Primary Key
Tabel Mata_Kuliah
Kolom
Kode_MK
Nama_MK
SKS
Kode_Dosen
Type Data
Ket.
Char(5)
Primary Key
Varchar(30) NOT NULL
Integer
NOT NULL
Char(10)
Cara I
Membuat konstrain PRIMARY KEY pada saat table
dibuat dan merupakan bagian dari definisi table.
Sintaks:
CREATE TABLE Mata_kuliah (
Kode_MK Char(5) PRIMARY KEY,
Nama_MK Varchar(30) NOT NULL,
Bobot Integer NOT NULL,
Kode_dosen Char(10)
)
Cara II
Menambahkan konstrain PRIMARY KEY pada
table yang sudah ada dan belum mempunyai
PRIMARY KEY.
Sintaks:
ALTER TABLE Mata_kuliah ADD
CONSTRAINT PK_MtKuliah1 PRIMARY
KEY (Kode_MK)
Catatan:
kode_mk sudah memiliki constraint NOT NULL
Menentukan Foreign Key
Tabel Dosen
Kolom
Kode_Dosen
Nama_Dosen
Gender
Kode_Agama
Nama_Jalan
Kode_Pos
Type Data
Char(10)
Varchar(30)
Char
Integer
Varchar(50)
Char(5)
Ket.
Primary Key
NOT NULL
Foreign Key Agama(Kode_Agama)
Foreign Key Alamat(Kode_Pos)
Cara I
Membuat konstrain FOREIGN KEY pada saat table dibuat dan
merupakan bagian dari definisi table.
Sintaks:
CREATE Table Dosen (
Kode_dosen Char(10) PRIMARY KEY,
Nama_dosen Varchar(30) NOT NULL,
Gender Char,
Kode_agama Integer
FOREIGN KEY REFERENCES Agama(Kode_agama),
Nama_jalan Varchar(50),
Kode_pos Char(5)
FOREIGN KEY REFERENCES Alamat(Kode_pos)
)
Cara II
Menambahkan konstrain FOREIGN KEY pada table yang sudah
ada dan belum mempunyai FOREIGN KEY dengan cara
menghubungkan konstrain FOREIGN KEY kesebuah konstrain
PRIMARY KEY yang ada di table yang sama atau table yang
berbeda.
Sintaks:
ALTER TABLE Dosen ADD CONSTRAINT FK_Dosen1 FOREIGN KEY
(Kode_agama) REFERENCES Agama(Kode_agama)
ALTER TABLE Dosen ADD CONSTRAINT FK_Dosen2 FOREIGN KEY
(Kode_pos) REFERENCES Alamat(Kode_pos)
Memvalidasi Nilai
Tabel Mahasiswa
Kolom
NIM
Nama
Gender
Kode_agama
Nama_jalan
Kode_pos
Kelas
Type Data
Char(10)
Varchar(30)
Char
Integer
Varchar(50)
Char(5)
Char(6)
Ket.
Primary Key
NOT NULL
CHECK (L/P)
Foreign Key Agama(Kode_agama)
Foreign Key Kelas(Kode_pos)
Foreign Key Kelas(Kelas)
Memvalidasi Data
Sintaks:
CREATE Table Mahasiswa(
Nim Char(10) PRIMARY KEY,
Nama Varchar(30) NOT NULL,
Gender Char CHECK (Gender=’L’ OR Gender=’P’),
Kode_agama Integer
FOREIGN KEY REFERENCES Agama(Kode_agama),
Nama_jalan Varchar(50),
Kode_pos Char(5)
FOREIGN KEY REFERENCES Alamat(Kode_pos),
Kelas Char(6)
FOREIGN KEY REFERENCES Kelas(Kelas)
)
Memvalidasi Nilai
Tabel KHS
Kolom
NIM
Kode_MK
Semester
Tahun_Ajaran
Nilai
Type Data
Ket.
Char(10) Foreign Key Mahasiswa(NIM)
Char(5)
Foreign Key Mata_Kuliah(Kode_MK)
Integer
Char(9)
Char
CHECK (A/B/C/D/E)
Memvalidasi Data
Sintaks:
CREATE Table KHS(
Nim Char(6)
FOREIGN KEY REFERENCES Mahasiswa(nim),
Kode_MK Char(5)
FOREIGN KEY REFERENCES Mata_kuliah(Kode_MK),
Semester Integer,
Tahun_ajaran Char(9),
Nilai Char CHECK
(Nilai=‘A’ OR Nilai=‘B’ OR Nilai=‘C’ OR Nilai=‘D’ OR Nilai=‘E’)
)
Memvalidasi Data
Sintaks:
CREATE Table KHS(
Nim Char(6)
FOREIGN KEY REFERENCES Mahasiswa(nim),
Kode_MK Char(5)
FOREIGN KEY REFERENCES Mata_kuliah(Kode_MK),
Semester Integer,
Tahun_ajaran Char(9),
Nilai Char CHECK (Nilai IN(‘A’,‘B’,‘C’,‘D’,‘E’))
)
Memberi Nilai Default
Tabel KHS
Kolom
NIM
Kode_MK
Semester
Tahun_Ajaran
Nilai
Type Data
Ket.
Char(10) Foreign Key Mahasiswa(NIM)
Char(5)
Foreign Key Mata_Kuliah(Kode_MK)
Integer
Char(9)
Char
CHECK (A/B/C/D/E) Default E
Memvalidasi Data
Sintaks:
CREATE Table KHS(
Nim Char(6)
FOREIGN KEY REFERENCES Mahasiswa(nim),
Kode_MK Char(5)
FOREIGN KEY REFERENCES Mata_kuliah(Kode_MK),
Semester Integer,
Tahun_ajaran Char(9),
Nilai Char CHECK (Nilai IN(‘A’,‘B’,‘C’,‘D’,‘E’)) DEFAULT ‘E’
)
Menambah Constraint
Tabel Dosen
Kolom
Kode_Dosen
Nama_Dosen
Gender
Kode_Agama
Nama_Jalan
Kode_Pos
Type Data
Char(10)
Varchar(30)
Char
Integer
Varchar(50)
Char(5)
Ket.
Primary Key
NOT NULL
CHECK (L/P)
Foreign Key Agama(Kode_Agama)
Foreign Key Alamat(Kode_Pos)
Menambah Constraint
Sintaks:
ALTER Table Dosen ADD CONSTRAINT
Cek_gender CHECK (Gender=’L’ OR Gender=’P’)
Menghapus Constrait
Contoh:
ALTER Table Dosen DROP CONSTRAINT Cek_gender
Latihan
Buatlah database dan tabel-tabel di
dalamnya untuk Sistem Informasi Peminjaman Buku di Perpustakaan yang telah
Anda buat normalisasinya!
Download