SQL Structured Query Language SQL Structured Query Language

  • Slides: 31
Download presentation
SQL

SQL

Structured Query Language • SQL (Structured Query Language) adalah Bahasa query yang digunakan untuk

Structured Query Language • SQL (Structured Query Language) adalah Bahasa query yang digunakan untuk mengakses DBMS. • Dengan bahasa yang standar, kita dapat mengakses data dimanapun, tanpa memperdulikan DBMS yang digunakan. • Ada banyak sekali bahasa basis data yang pernah dibuat untuk masing-masing DBMS. Namun akhirnya yang menjadi standar adalah SQL.

 • Beberapa Relational DBMS yang menggunakan SQL, antara lain: Oracle, Sybase, Microsoft SQL

• Beberapa Relational DBMS yang menggunakan SQL, antara lain: Oracle, Sybase, Microsoft SQL Server, Access, My. SQL, Postgre dan masih banyak lagi. • SQL memiliki beberapa versi antara lain: SQL 1 atau dikenal sebagai SQL -86, SQL 2 (SQL-92) dan SQL 3 yang dikenal dengan SQL-99.

Struktur Dasar • Sebuah ekspresi SQL dasar hanya terdiri atas 3 klausa, yaitu: select,

Struktur Dasar • Sebuah ekspresi SQL dasar hanya terdiri atas 3 klausa, yaitu: select, from, where – Klausa select digunakan untuk menetapkan daftar atribut (field) yang diinginkan sebagai hasil query – Klausa form digunakan untuk menetapkan tabel yang akan ditelusuri selama query data dilakukan – Klausa where, yang sifatnya optional, digunakan sebagai predikat (kriteria) yang harus dipenuhi dalam memperoleh hasil query. Select A 1[ , A 2, . . . , An] From t 1 [ , t 2, . . . , tm] [ where P]

 • Contoh: select nim, nama_mhs from mahasiswa select * from mahasiswa where nim

• Contoh: select nim, nama_mhs from mahasiswa select * from mahasiswa where nim = ‘ 980002’

Kelompok Pernyataan SQL • • DDL ( Data Definition Language) DML ( Data Manipulation

Kelompok Pernyataan SQL • • DDL ( Data Definition Language) DML ( Data Manipulation Language ) DCL (Data Control Language) Pengendali transaksi

DDL ( Data Definition Language) • DDL merupakan kelompok perintah yang berfungsi untuk mendefinisikan

DDL ( Data Definition Language) • DDL merupakan kelompok perintah yang berfungsi untuk mendefinisikan atribut-atribut database, table, atribut (kolom), batasan-batasan terhadap suatu atribut serta hubungan antar table. Yang termasuk kelompok DDL ini adalah : – CREATE untuk menciptakan table ataupun indeks – ALTER untuk mengubah struktur table – DROP untuk menghapus table ataupun indeks

DML ( Data Manipulation Language ) • Adalah kelompok perintah yang berfungsi untuk memanipulasi

DML ( Data Manipulation Language ) • Adalah kelompok perintah yang berfungsi untuk memanipulasi data, misalnya untuk pengambilan, penyisipan pengubahan dan penghapusan data. Yang termasuk DML adalah – SELECT memilih data – INSERT menambah data – DELETE menghapus data – UPDATE mengubah data

1. Membuat Tabel • Pernyataan CREATE TABLE digunakan untuk membuat sebuah tabel baru. •

1. Membuat Tabel • Pernyataan CREATE TABLE digunakan untuk membuat sebuah tabel baru. • Berikut ini merupakan bentuk sederhana CREATE TABLE: CREATE TABLE <nama tabel> (<kolom 1><tipe data>, <kolom 2><tipe data>, ………………………. <kolom N><tipe data>)

 • Bentuk pernyataan CREATE TABLE jika kita menggunakan batasan (constaints): CREATE TABLE <nama

• Bentuk pernyataan CREATE TABLE jika kita menggunakan batasan (constaints): CREATE TABLE <nama tabel> (<kolom 1><tipe data>[<batasan>], <kolom 2><tipe data>[<batasan>], ………………………. <kolom N><tipe data>[<batasan>]) [ ]=optional Catatan: kita dapat memiliki kolom sebanyak yang kita inginkan dan batasan/ constraints bersifat optional

 • Contoh: CREATE TABLE Pegawai (no_id number(5), nm_depan varchar(15), nm_belakang varchar(20), umur number(3),

• Contoh: CREATE TABLE Pegawai (no_id number(5), nm_depan varchar(15), nm_belakang varchar(20), umur number(3), kota varchar(30), propinsi varchar(20)); • Untuk membuat tabel baru, ketikkan CREATE TABLE diikuti dengan nama tabel, tanda ‘(‘, diikuti dengan nama kolom pertama, tipe data dan batasannya jika ada, lanjutkan untuk kolom berikutya,

Tipe-tipe data SQL yang sering digunakan: Tipe Data char(ukuran) varchar(ukuran) Deskripsi String karakter dengan

Tipe-tipe data SQL yang sering digunakan: Tipe Data char(ukuran) varchar(ukuran) Deskripsi String karakter dengan panjang tetap String karakter dengan panjang bervariasi tapi panjang maksimal sesuai yang ditetapkan numeric(ukuran) Angka dengan maksimal digit sesuai yang ditetapkan Angka berupa integer Tanggal Waktu/jam integer date time

 • Ketika tabel dibuat, biasanya satu atau lebih kolom memiliki batasan-batasan tertentu. •

• Ketika tabel dibuat, biasanya satu atau lebih kolom memiliki batasan-batasan tertentu. • Suatu batasan biasanya berupa aturan yang terkait dengan kolom tersebut, data yang dimasukkan kedalam kolom harus sesuai dengan aturan tersebut. • Sebagai contoh: batasan “unique” menentukan bahwa tidak boleh ada dua record yang memiliki nilai sama. • Ada dua batasan lagi yang sering digunakan contohnya “not null” menentukan bahwa kolom tidak dapat bernilai kosong. “primary key” menentukan identifikasi unik untuk setiap record/ baris dalam sebuah tabel.

 • Contoh: CREATE TABLE Pegawai (no_id number(5) UNIQUE NOT NULL, nm_depan varchar(15), nm_belakang

• Contoh: CREATE TABLE Pegawai (no_id number(5) UNIQUE NOT NULL, nm_depan varchar(15), nm_belakang varchar(20), umur number(3), kota varchar(30), propinsi varchar(20), PRIMARY KEY (no_id));

2. Menghapus Tabel • Pernyataan DROP TABLE digunakan untuk menghapus sebuah tabel dan seluruh

2. Menghapus Tabel • Pernyataan DROP TABLE digunakan untuk menghapus sebuah tabel dan seluruh record pada tabel tersebut. • Untuk menghapus tabel secara menyeluruh termasuk semua record-nya, tulis DROP TABLE diikuti dengan nama tabel. DROP TABLE <nama tabel>; • Contoh: DROP TABLE pegawai;

3. Modifikasi Struktur Tabel • Untuk memodifikasi struktur dari suatu tabel digunakan pernyataan ALTER

3. Modifikasi Struktur Tabel • Untuk memodifikasi struktur dari suatu tabel digunakan pernyataan ALTER TABLE. • Pernyataan ALTER TABLE dapat digunakan untuk menambah dan menghapus kolom maupun batasannya (constraint). ALTER TABLE <nama tabel>; ADD <nama kolom> <tipe data>[, …] | DROP <nama kolom> [, …]; tambah kolom Hapus kolom ALTER TABLE pegawai ADD kode_pos char(5); ALTER TABLE pegawai DROP propinsi;

4. Menambah Data • Pernyataan INSERT digunakan untuk menambah atau menyisipkan data atau record

4. Menambah Data • Pernyataan INSERT digunakan untuk menambah atau menyisipkan data atau record pada sebuah tabel. • Untuk menambahkan record kedalam tabel, tuliskan INSERT INTO diikuti dengan nama tabel. INSERT INTO <nama tabel> (<kolom 1>, <kolom 2>, …, <kolom. N>) VALUES (<nilai 1>, <nilai 2>, …, <nilai. N>); INSERT INTO pegawai (no_id, nm_depan, nm_belakang, umur, kota, propinsi) VALUES (99023, ‘Agus’, ‘Maulana’, 45, ‘Jaksel’, ‘Jakarta’);

5. Mengambil Data • Pernyataan SELECT digunakan untuk mengambil data tertentu yang sesuai dengan

5. Mengambil Data • Pernyataan SELECT digunakan untuk mengambil data tertentu yang sesuai dengan kriteria yang ditentukan. • Berikut ini merupakan bentuk sederhana dari pernyataan SELECT <kolom 1> (<kolom 2>, …) FROM <nama tabel> [WHERE <kondisi>]; SELECT [ALL | DISTINCT] <kolom 1>[, kolom 2>] FROM <tabel 1>[, <tabel 2>] [WHERE <kondisi>] [GROUP BY <daftar kolom>] HAVING <kondisi>] [ORDER BY <daftar kolom [ASC | DESC];

 • Nama-nama kolom setelah keyword SELECT menentukan kolom-kolom yang akan dikembalikan sebagai hasil.

• Nama-nama kolom setelah keyword SELECT menentukan kolom-kolom yang akan dikembalikan sebagai hasil. • Untuk memilih semua kolom, kita dapat menggunakan ALL atau “*”. • Nama tabel setelah keyword FROM menentukan tabel mana yang akan diambil datanya. • Klausa WHERE bersifat optional, digunakan untuk menentukan nilai data mana yang akan diambil berdasarkan kriteria yang ditentukan.

SELECT * FROM pegawai WHERE nm_depan =‘ERIC’; • Pernyataan diatas hanya mengambil semua kolom

SELECT * FROM pegawai WHERE nm_depan =‘ERIC’; • Pernyataan diatas hanya mengambil semua kolom dari tabel pegawai yang nm_depan-nya Eric. SELECT nm_belakang, kota, umur FROM pegawai WHERE umur>30; • Pernyataan diatas akan mengambil kolom nm_belakang, kota dan umur dari tabel pegawai yang umurnya lebih dari 30.

6. Meng-update Data • Pernyataan UPDATE digunakan untuk meng-update atau merubah record yang sesuai

6. Meng-update Data • Pernyataan UPDATE digunakan untuk meng-update atau merubah record yang sesuai dengan kriteria yang telah ditentukan. • Berikut ini merupakan bentuk pernyataan UPDATE <nama tabel> SET <nama kolom 1>=<nilai baru 1> [, <nama kolom 2>=<nilai baru 2>. . ] [WHERE <nama kolom>OPERATOR <nilai> [and|or <nama kolom> OPERATOR <nilai>];

 • Contoh: pernyataan dibawah ini akan merubah kolom umur menjadi umur+1 pada tabel

• Contoh: pernyataan dibawah ini akan merubah kolom umur menjadi umur+1 pada tabel pegawai yang nm_depannya Mary dan nm_belakangnya Willy. UPDATE pegawai SET umur=umur+1 WHERE nm_depan=‘Mary’ and nm_belakang=‘Willy’;

7. Menghapus Data • Pernyataan DELETE digunakan untuk menghapus record atau baris dari suatu

7. Menghapus Data • Pernyataan DELETE digunakan untuk menghapus record atau baris dari suatu tabel. • Berikut ini merupakan bentuk pernyataan DELETE FROM <nama tabel> WHERE <nama kolom> OPERATOR <nilai> [and | or <nama kolom> OPERATOR <nilai>]; • Untuk menghapus record/baris dari suatu tabel, tulis “DELETE FROM” diikuti dengan nama tabel dan klausa WHERE yang berisi kondisi/ kriteria untuk menghapus. • Jika klausa WHERE tidak disertakan, maka semua record pada tabel tersebut akan dihapus.

 • Contoh: Pernyataan dibawah ini akan menghapus record dari tabel pegawai yang nm_depannya

• Contoh: Pernyataan dibawah ini akan menghapus record dari tabel pegawai yang nm_depannya Mike atau Eric DELETE FROM pegawai WHERE nm_depan =‘Mike’ or nm_depan=‘Eric’;

8. Menggabungkan Tabel • Kita dapat menggabungkan dua atau lebih tabel dalam satu hasil

8. Menggabungkan Tabel • Kita dapat menggabungkan dua atau lebih tabel dalam satu hasil query dengan menggunakan pernyataan SELECT. • Misalkan tabel pegawai sebelumnya akan digabungkan dengan tabel gaji. Tabel gaji No_id Gaji Tunjangan 99980 700000 99982 750000 99997 800000

 • Contoh: untuk menampilkan daftar nm_depan, nm_belakang, gaji, dan tunjangan dari tabel pegawai

• Contoh: untuk menampilkan daftar nm_depan, nm_belakang, gaji, dan tunjangan dari tabel pegawai dan gaji SELECT pegawai. nm_depan, pegawai. nm_belakang, gaji, gaji. tunjangan FROM pegawai, gaji WHERE pegawai. no_id=gaji. no_id;

DCL ( Data Control Language ) • Berisi perintah-perintah untuk mengendalikan pengaksesan data. Yang

DCL ( Data Control Language ) • Berisi perintah-perintah untuk mengendalikan pengaksesan data. Yang termasuk DCL adalah : GRANT memberikan kendali pada pengaksesan data. REVOKE mencabut kemampuan pengaksesan data LOCK TABLE mengunci table

Pengendali transaksi • Adalah perintah-perintah yang berfungsi untuk mengendalikan pengeksekusian transaksi. Yang termasuk kelompok

Pengendali transaksi • Adalah perintah-perintah yang berfungsi untuk mengendalikan pengeksekusian transaksi. Yang termasuk kelompok ini adalah : – COMMIT menyetujui rangkaian perintah yang berhubungan erat yang telah berhasil dilakukan – ROLLBACK membatalkan transaksi yang dilakukan karena adanya kesalahan atau kegagalan pada salah satu rangkaian perintah. – SAVEPOINT TO untuk menandai tempat dimana suatu transaksi harus rollback.

Latihan 1. Buat perintah untuk membuat tabel baru bernama BUKU dimana struktur tabelnya sebagai

Latihan 1. Buat perintah untuk membuat tabel baru bernama BUKU dimana struktur tabelnya sebagai berikut. Column Name KODE JUDUL PENGARANG PENERBIT HARGA JUMLAH DISC Data Type Char Varchar Int Int Size 5 50 20 30

2. Inputkan data baru kedalam table BUKU dengan bentuk data seperti dibawah ini. 11111,

2. Inputkan data baru kedalam table BUKU dengan bentuk data seperti dibawah ini. 11111, Cara Cepat Belajar Komputer, Putri Yusviany, Media. Kom, 40000, 10, 5 22222, Dasar Pemograman Database, Dimas Putra, Media. Kom, 50000, 5, 20 33333, Terapi air dan Manfaatnya, dr. Adinda, Pusat. Kes, 80000, 0, NULL 12312, Cara Membuat Aneka Hidangan Sate, Dewi Rifkiyah, 30000, NULL

3. Buat duplikat data dan struktur table untuk field kode, judul dan pengarang dari

3. Buat duplikat data dan struktur table untuk field kode, judul dan pengarang dari table BUKU ke table baru yang bernama BUKU_1 4. Hapus seluruh data di table BUKU_1 tanpa terkecuali