Anda di halaman 1dari 31

DIII – Manajemen Informatika

Fakultas Ilmu Komputer


Universitas Amikom Yogyakarta

STRUCTURED QUERY
LANGUAGE
MATAKULIAH : PEMOGRAMAN BASIS DATA
SEJARAH SQL
1970
IBM San Jose Research Laboratory
SEQUEL -> Structured English Query Language

1986
The American National Standarts Institute (ANSI) dan International
Standarts Organization (ISO)
SQL -> Structured Query Language
TIPE SQL
SQL

Data Transaction
Data Defintion Data Query Data Control
Manipulation Control
Language Language Language
Language Language

TRUNCATE CREATE SELECT INSERT GRANT COMMIT

COMMENT ALTER UPDATE REVOKE BEGIN TRAN

ROLLBACK
RENAME DROP DELETE
TRAN

SAVE POINT
Data Definition Language (DDL)
DDL dapat membuat dan memodifikasi database, tabel dan strukturnya.

Jenis DDL : o Alter o Comment


o Rename
o Create o Drop o Truncate
Comment
Jenis comment atau komentar yang tidak akan di • Slash and asterisk (/* */)
eksekusi oleh sistem yaitu :
Digunakan ketika komentar lebih dari satu baris atau
• Double line (--) didepan sintak

Jenis komentar ini bisa digunakan baris sebelum sintak /*sintak pembuatan db*/ CREATE DATABASE mahasiswa

atau dibelakang sintak namun tidak bisa didepan sintak.

-- pembuatan database mahasiswa


/*menampilkan semua kolom
CREATE DATABASE mahasiswa --mahasiswa adalah nama db
dari tabel mahasiswa*/
SELECT * FROM mahasiswa;
Penerapan Data Definition Language
DATABASE
Create melalui UI
CREATE

CREATE DATABASE namadb

Sintak tersebut digunakan untuk membuat database

Penyimpanan database akan default di sistem yaitu di C:\Program


Files\Microsoft SQL Server\MSSQL\Data\*kemungkinan berbeda disetiap komputer
Sintak pembuatan database dengan parameter

--sintak untuk membuat db


--sintak pengaturan penyimpanan dan parameter pada log /
history
CREATE DATABASE namadb
--sintak untuk penyimpanan dan pengaturan parameter database LOG ON (
--nama log
ON PRIMARY (
--tuliskan nama database sesuai dengan sintak pembuatan db NAME = namadblog,
--lokasi penyimpanan log
NAME = namadb,
--lokasi peyimpanan database FILENAME = ‘D:\namadb.ldf’,
--ukuran awal log
FILENAME = ‘D:\namadb.mdf’,
--ukuran awal database SIZE = 1,
--ukuran maksimal log
SIZE = 1,
--ukuran maksimal database MAXSIZE = 10,
--penambahan ukuran log ketika sudah melebihi maxsize
MAXSIZE = 10,
--penambahan ukuran db ketika sudah melebihi maxsize FILEGROWTH = 2)
FILEGROWTH = 2)
Sintak pembuatan database dengan parameter
untuk mengatur lokasi penyimpan database dan lognya.

--sintak untuk membuat db

CREATE DATABASE namadb


--sintak untuk penyimpanan dan pengaturan parameter lain database

ON PRIMARY (
--tuliskan nama database sesuai dengan sintak pembuatan db

NAME = namadb,
--lokasi peyimpanan database

FILENAME = ‘D:\namadb.mdf’,
USE -> menggunakan database
USE DATABASE namabd

DROP -> menghapus database


DROP DATABASE namabd

Rename Database
• ALTER DATABASE oldName MODIFY NAME = newname
• EXEC sp_renamedb 'oldName', 'newName’
• User Interface
• Detach dan Attach
File database

 *.mdf -> MASTER DATABASE FILE


digunakan untuk menyimpan basis data

 *.ldf -> LOG DATABASE FILE


digunakan untuk menyimpan history atau
menyimpan apa saja yang sudah kita lakukan pada
sql
Attach Database
Digunakan untuk memasukkan database yg sudah di keluarkan atau
file mdf ke dalam server
Detach Database
Digunakan untuk mengeluarkan database dari server tetapi tidak
menghapus file masternya
Penerapan Data Definition Language
TABLE
Create Table melalui UI
Create Table
data harus
terisi
Create Table Mahasiswa(
Thang Integer Not Null,
Nim Integer Not Null,
Nama Varchar (30) Not Null,
Alamat Varchar (80) Default 'Yogya',
Tgl Datetime Null); Ketika data
kosong akan diisi
dengan nilai
Default
Primary Key
Kunci utama
dituliskan satu
Create Table Mahasiswa( baris pada kolom
Thang Integer Not Null, kunci
Nim Integer Not Null Primary Key, Create Table Mahasiswa(
Nama Varchar (30) Not Null, Thang Integer Not Null,
Alamat Varchar (80) Default 'Yogya', Nim Integer Not Null,
Tgl Datetime); Nama Varchar (30) Not Null,
Alamat Varchar (80) Default 'Yogya',
Tgl Datetime,
Primary Key (Nim));

Kunci utama
dituliskan
terakhir
Primary Key
Create Table Mahasiswa(
Thang Integer Not Null,
Nim Integer Not Null,
Nama Varchar (30) Not Null,
Alamat Varchar (80) Default 'Yogya',
Tgl Datetime);

ALTER TABLE mahasiswa ADD CONSTRAINT PK_Mhs PRIMARY KEY (Nim);


Apabila tabel mahasiswa sudah
dieksekusi dan lupa
menambahkan PK
Primary Key (masih revisi)
Create Table Mahasiswa(
Thang Integer Not Null Primary Key,
Nim Integer Not Null,
Nama Varchar (30) Not Null,
Alamat Varchar (80) Default 'Yogya',
Tgl Datetime);
Drop table mahasiswa, ganti PK ke NIM lalu eksekusi lagi
Apabila tabel mahasiswa sudah
dieksekusi dan salah
penulisan/ penunjukan PK
Autoincrement
Autoincrement adalah penambahan nilai otomatis tipe data integer.
CREATE TABLE CONTOH(
Idcontoh Integer Identity (0,1) Primary Key,
Kode Char(2) Not Null,
Nomor Integer Not Null);

Reset :
DBCC CHECKIDENT (CONTOH,RESEED, 5)
Peraturan.!

TABEL YANG ADA PRIMARY KEY HARUS DIBUAT


TERLEBIH DAHULU
atau
TABEL YANG TIDAK ADA FOREIGN KEY

TIPE DATA ANTARA Primary Key DAN Foreign Key


HARUS SAMA

22
Urutan pembuatan tabel yang ada :
PK
PK-FK
FK

23
FOREIGN KEY
CREATE TABEL MENGAJAR(
NIP CHAR(10) NOT NULL FOREIGN KEY REFERENCES DOSEN(NIP),
KODE CHAR(10) NOT NULL FOREIGN KEY REFERENCES MATAKULIAH(KODE))

24
FOREIGN KEY
CREATE TABEL MENGAJAR(
NIP CHAR(10) NOT NULL
REFERENCES DOSEN (NIP)
ON UPDATE CASCADE
ON DELETE NO ACTION,
KODE CHAR(10) NOT NULL
REFERENCES MATAKULIAH (KODE)
ON UPDATE CASCADE
ON DELETE NO ACTION);
25
FOREIGN KEY

ON UPDATE CASCADE
Ketika data pada PK diupdate data pada FK juga ikut
terupdate

ON DELETE NO ACTION
Ketika data PK dihapus data FK tidak ikut terhapus

26
FOREIGN KEY

CREATE TABEL MENGAJAR(


NIP CHAR(10) NOT NULL,
KODE CHAR(10) NOT NULL)

Tabel sudah dieksekusi dan


lupa memberikan Foreign key

27
FOREIGN KEY (2)
Digunakan apabila tabel sudah dieksekusi dan lupa memberikan FK

ALTER TABLE MENGAJAR


ADD CONSTRAINT FK_MENGAJAR1
FOREIGN KEY (NIP) –-nama kolom FK di mengajar
REFERENCES DOSEN (NIP)
ON UPDATE CASCADE
ON DELETE NO ACTION;

ALTER TABLE MENGAJAR


ADD CONSTRAINT FK_MENGAJAR2
FOREIGN KEY (KODE) –-nama kolom FK di mengajar
REFERENCES MATAKULIAH (KODE)
ON UPDATE CASCADE
ON DELETE NO ACTION;
28
Hapus Foreign Key

ALTER
TABLE Mahasiswa
DROP
CONSTRAINT PK_Mengajar
Edit Tabel
1. ADD Column
--menambahkan kolom jabatan pada tabel dosen
ALTER TABLE dosen
ADD jabatan varchar (30);
2. DROP Column
--hapus kolom jabatan pada tabel dosen
ALTER TABLE dosen

3. Edit Tipe data DROP COLUMN jabatan;

--ubah tipe data pada kolom jabatan menjadi 20 pada tabel dosen
ALTER TABLE dosen
ALTER COLUMN jabatan varchar(20);
30
HAPUS SEMUA ISI TABEL

TRUNCATE TABLE namatabel


sintak yang digunakan untuk menghapus semua isi tabel tertentu

Contoh :
--hapus isi data pada tabel dosen
TRUNCATE TABLE dosen

31

Anda mungkin juga menyukai