SQL Basis Data STRUCTURED QUERY LANGUAGE SQL Singkatan

SQL Basis Data

STRUCTURED QUERY LANGUAGE (SQL) Singkatan dari Structured Query Language, SQL : bahasa query standar yang digunakan untuk mengakses basis data relasional

Kemampuan SQL Pendefinisian struktur data (contoh: create table, create view, dll) Pengubahan data (contoh: update data) Manipulasi data / memperoleh data Pengaturan sekuritas

Pemakai SQL Database Administrator Programmer Pengguna

Penggunaan SQL sebagai bahasa administrasi basis data SQL sebagai bahasa query interaktif SQL sebagai bahasa pemrograman basis data SQL sebagai bahasa klien/server

Kelompok Pernyataan SQL Terdapat berberapa jenis pernyataan SQL DDL DCL DML

DCL Data Control Language Digunakan untuk pengendalian akses. Contoh, GRANT, REVOKE, LOCK TABLE

DDL Data Definition Language Untuk mendefinisikan objek-objek basis data, tabel, atribut, batasan-batasan thd atribut, serta hubungan pemasukan, pengubahan dan antar tabel. Meliputi : CREATE, ALTER, DROP

DML Data Manipulation Language (DML) Untuk memanipulasi data dalam basis data Misal, untuk pengambilan, pemasukan, pengubahan, dan penghapusan. Meliputi SELECT, INSERT, UPDATE. DELETE

Pengendali Transaksi Untuk mengendalikan pengeksekusian transaksi Meliputi : COMMIT, ROLLBACK

Tipe Data Untuk setiap kolom/field yang terdapat pada sebuah tabel, harus ditentukan pula tipe datanya yang menentukan jangkauan nilai yang bisa diisikan Masing-masing DBMS memiliki jenis dan nama tipe data tersendiri. Bisa jadi ada yang khusus (tidak ada pada yang lain), atau diberi dengan nama lain, atau bahkan tidak memiliki tipe data yang standar

Tipe Data Beberapa Tipe data yang standar SQL-92 adalah: Binary varying Character() Character varying() Datetime Double precision Float Integer Numeric Dsb

DDL untuk database DDL untuk tabel DDL untuk view DDL untuk Trigger/Procedure DDL index

DDL database Create database db_akademik; Drop db_akademik;
![DDL table Create create table <namatabel> ( <kolom 1> <tipedata 1> [aturan 1], <kolom DDL table Create create table <namatabel> ( <kolom 1> <tipedata 1> [aturan 1], <kolom](http://slidetodoc.com/presentation_image_h/7b3013610f4b612b5ada0d1d8d9cf109/image-15.jpg)
DDL table Create create table <namatabel> ( <kolom 1> <tipedata 1> [aturan 1], <kolom 2> <tipedata 2> [aturan 2], [aturantabel] )
![[aturan] berisi aturan untuk field/kolom ybs, bersifat opsional. Biasanya berupa: NOT NULL DEFAULT<nilai> [aturan] berisi aturan untuk field/kolom ybs, bersifat opsional. Biasanya berupa: NOT NULL DEFAULT<nilai>](http://slidetodoc.com/presentation_image_h/7b3013610f4b612b5ada0d1d8d9cf109/image-16.jpg)
[aturan] berisi aturan untuk field/kolom ybs, bersifat opsional. Biasanya berupa: NOT NULL DEFAULT<nilai>
![[aturan. Tabel] berisi aturan-aturan yang berlaku untuk tabel tersebut. Jika aturan lebih dari [aturan. Tabel] berisi aturan-aturan yang berlaku untuk tabel tersebut. Jika aturan lebih dari](http://slidetodoc.com/presentation_image_h/7b3013610f4b612b5ada0d1d8d9cf109/image-17.jpg)
[aturan. Tabel] berisi aturan-aturan yang berlaku untuk tabel tersebut. Jika aturan lebih dari satu, maka dibatasi oleh tanda koma. Aturan tabel biasanya: primary key (<Daftar. Kolom. Key>) foreign key (<daftar. Kolom. Foreign. Key>) references <nama. Tabel> (<daftar. Kolom>) [ON DELETE <aturan. Delete>] [ON UPDATE <aturan. Update>])
![[Aturan. Tabel] bisa diberi nama. Jika diberi nama, maka syntaxnya sbb: CONSTRAINT <nama. [Aturan. Tabel] bisa diberi nama. Jika diberi nama, maka syntaxnya sbb: CONSTRAINT <nama.](http://slidetodoc.com/presentation_image_h/7b3013610f4b612b5ada0d1d8d9cf109/image-18.jpg)
[Aturan. Tabel] bisa diberi nama. Jika diberi nama, maka syntaxnya sbb: CONSTRAINT <nama. Aturan> <Aturan. Tabel>

Contoh CREATE TABLE Mahasiswa( NRP CHAR(10) not null, NIP CHAR(18) not null, MHSNAMA VARCHAR 2(20), MHSALAMAT VARCHAR 2(50), MHSJENISKEL CHAR(1) DEFAULT ‘L’, constraint PK_MAHASISWA primary key (NRP), constraint FK_MHS_DSN foreign key (NIP) REFERENCES Dosen(NIP)

Alter / Modifikasi tabel 1. Menambahkan kolom baru: ALTER TABLE <nama. Tabel> ADD <namakolom> <tipedata> <aturan> CONTOH: ALTER TABLE mahasiswa ADD (tgl_lahir date); 2. Menghapus kolom: ALTER TABLE <nama. Tabel> drop <namakolom>

Drop / Menghapus tabel, syntax: DROP TABLE <nama. Tabel>

DDL View adalah tabel bayangan Tidak menyimpan data secara fisik. Biasanya berupa hasil query dari tabel-tabel dalam sebuah database

DDL VIEW Syntax CREATE VIEW <nama. View> AS <SQLQuery> Contoh: Membuat View dengan nama Mahasiswa. Pria: CREATE VIEW Mahasiswa. Pria AS SELECT * FROM Mahasiswa WHERE jeniskel=”L”

DDL TRIGGER Trigger adalah sebuah obyek dalam database yang berupa prosedur yang merespon setiap kali terdapat proses modifikasi pada tabel Proses modifikasi berupa: Insert, Update dan delete
![Syntax: CREATE TRIGGER <nama. Trigger> ON TABLE <nama. Tabel> FOR [DELETE] [, ] Syntax: CREATE TRIGGER <nama. Trigger> ON TABLE <nama. Tabel> FOR [DELETE] [, ]](http://slidetodoc.com/presentation_image_h/7b3013610f4b612b5ada0d1d8d9cf109/image-25.jpg)
Syntax: CREATE TRIGGER <nama. Trigger> ON TABLE <nama. Tabel> FOR [DELETE] [, ] [INSERT] [, ] [UPDATE] AS <perintah. SQL>

CREATE TRIGGER t. Log. Ubah. Nilai ON TABLE pesertakul FOR UPDATE, INSERT AS INSERT INTO Log. Historis (tanggal, proses) VALUES(get. Date(), ‘Terjadi proses perubahan data nilai’)

Referential Integrity Constraint

Referential Integrity Constraint Digunakan untuk: menjaga konsistensi baris data antara 2 buah tabel Berkaitan dengan insert, update dan delete

Referential Integrity Constraint Aturan untuk Update -> berlaku pada proses modifikasi di parent table Cascade Pembaruan sebuah baris data diikuti dengan pembaruan baris data pada child table yang terelasikan. Restrict mencegah proses pembaruan data jika terdapat baris data di child table yang terelasikan. Ignore mengabaikan referensi. Boleh memperbarui data pada parent, tapi tidak memperbarui data yang berelasi pada child table.

Referential Integrity Constraint Aturan untuk Delete -> berlaku pada proses modifikasi di parent table Cascade Menghapus seluruh baris data pada child table yg terelasikan. Restrict mencegah penghapusan jika terdapat baris data yang berelasi pada child table. Ignore mengabaikan referensi. Boleh menghapus data, dan tidak ada efeknya bagi child table.

Referential Integrity Constraint Aturan untuk Insert • Restrict �Tidak boleh menambah data pada child table, jika nilai yang dimasukkan pada kolom yang berelasi tidak terdapat pada parent tabelnya. • Ignore �mengabaikan referensi. Boleh menambah data pada child, walaupun nilai yang dimasukkan pada kolom yang berelasi tidak terdapat pada parent tabel.

Referential Integrity Constraint Contoh CREATE TABLE Mahasiswa (nrp CHAR(10), nama CHAR(20), nip CHAR(10) PRIMARY KEY (nrp), FOREIGN KEY (nip) REFERENCES Dosen ON DELETE CASCADE ON UPDATE CASCADE )
- Slides: 32