pengantar sql

35
PENGANTAR SQL Oleh : R. Arri Widyanto

Upload: arri-widyanto

Post on 08-Jan-2017

308 views

Category:

Data & Analytics


35 download

TRANSCRIPT

Page 1: Pengantar SQL

PENGANTAR SQL

Oleh :R. Arri Widyanto

Page 2: Pengantar SQL

SQL (Structured Query Language) , What is it ?

Merupakan bahasa query standar. Digunakan mengakses basis data relasional. Pertama kali diterapkan pada sistem R

(sebuah riset pada laboratorium di San Jose, IBM).

Dapat digunakan baik secara stand alone maupun dilekatkan pada bahasa pemrograman lain.

Page 3: Pengantar SQL

SQL sebagai Subbahasa

SQL ->sebagai bahasa query sebenarnya tidak tepat karena kemampuannya tidak hanya sebatas query (memperoleh data) saja.

Kemampuan : pendefinisian sruktur data, pengubahan data, pengaturan sekuritas dll.

SQL-> sebagai sub-bahasa, karena tidak mendukung persyaratan bahasa yang lengkap (walaupun dapat digunakan untuk mengkases data).

Kemampuan yang tidak ada : pengujian kondisi (IF), dan pengulangan (REPEAT).

Page 4: Pengantar SQL

Antarmuka SQL terhadap DBMS

Penggunaan SQL cukup luas, dapat digunakan oleh (DBA, programmer, atau user).

SQL sebagai bahasa administrasi data. Dipakai oleh DBA untuk menciptakan, mengendalikan, pengaksesan basis data.

SQL sebagai bahasa query interaktif. Pengguna dapat memberikan perintah-perintah untuk mengakses basis data sesuai kebutuhannya.

SQL sebagai bahasa pemrograman basis data. Programer dapat menggunakan perintah SQL dalam program aplikasi yang dibuat guna mengakses basis data.

SQL sebagai bahasa Client/Server. Sebuah client dapat menjalankan suatu aplikasi yang mengakses basis data yang ada dalam server.

Page 5: Pengantar SQL

Elemen SQL

Elemen dasar mencakup : pernyataan, nama, tipe data, konstanta, Ekspresi fungsi bawaan

Page 6: Pengantar SQL

Pernyataan ALTER-> Mengubah struktur tabel COMMIT->Mengakhiri eksekusi transaksi CREATE->Menciptakan tabel, indeks, atau view DELETE->Menghapus baris pada tabel DROP->Menghapus tabel, indeks atau view GRANT->Memberikan hak akses terhadap basis data kepada

pengguna INSERT->Menambah baris pad tabel SELECT->Memilih baris dan kolom dalam tabel UPDATE->Mengubah nilai pada baris. REVOKE->Membatalkan hak terhadap basis data ROLLBACK->Mengembalikan transaksi ke keadaan semula.

Page 7: Pengantar SQL

Nama

Digunakan sebagai identitas bagi obyek-obyek dalam DBMS.

Contoh obyek : - Tabel- Kolom- Pengguna

Page 8: Pengantar SQL

Tipe data (1) Tipe data Standar CHAR-> Menyatakan deretan String. Misal untuk menyatakan

nama orang, nama jalan, nama kota INTEGER-> Menyatakan bilangan bulat NUMERIC->Menyatakan bilangan pecahan. Tipe data Perluasan VARCHAR->Menyatakan string yang panjangnya bervariasi MONEY->Menyatakan uang BOOLEAN->Menyatakan tipe logis (True atau False) BLOB->Menyatakan data biner (gambar, suara dls) SERIAL atau AUTOINCREMENT->Menyatakan nilai urut.

Page 9: Pengantar SQL

Tipe data (2)

Page 10: Pengantar SQL

Konstanta

Menyatakan nilai yang tetap Kebalikannya adalah variabel Contoh konstanta :

- Konstanta numerik : 100, -245, 5.75- Konstanta :’Jl. Mayjend Bambang Soegeng’- Konstanta simbolik (disediakan SQL) :

SYSDATE (tanggal sistem), USER (nama pengguna yang menjalankan SQL).

Page 11: Pengantar SQL

Ekspresi

Adalah sesuatu yang menghasilkan nilai

Digunakan untuk menghitung nilai : Contoh : (LABA/MODAL)*100 Merupakan ekspresi untuk membagi

variabel LABA dibagi MODAL dikalikan 100

Page 12: Pengantar SQL

Simbol Ekspresi Aritmatika

Simbol Keterangan

* Perkalian

/ Pembagian

+ Penjumlahan

- Pengurangan

Page 13: Pengantar SQL

Fungsi Bawaan

Adalah suatu sub program yang menghasilkan suatu nilai jika dipanggil

Contoh : MIN digunakan untuk menentukan nilai

terkecil MAX digunakan untuk menentukan nilai

terbesar AVG digunakan untuk menentukan nilai

rata-rata.

Page 14: Pengantar SQL

Kelompok pernyataan SQL

DDL (Data Definition Language) DML (Data Manipulation Language) DCL (Data Control Language) Pengendalian Transaksi Pengendalian Programatik

Page 15: Pengantar SQL

DDL (Data Definition Language)

Kelompok perintah untuk mendefinisikan atribut-atribut basis data, tabel, kolom, batasan-batasan terhadap suatu atribut serta hubungan antar tabel

Contoh : CREATE ALTER DROP

Page 16: Pengantar SQL

DML (Data Manipulation Language)

Kelompok perintah untuk memanipulasi data dalam basis data.

Misalnya untuk pengambilan, penyisipan, pengubahan dan penghapusan data :

Contoh : SELECT INSERT DELETE UPDATE

Page 17: Pengantar SQL

DCL (Data Control Language)

Berisi perintah untuk mengendalikan pengaksesan data.

Pengendalian dapat dilakukan per pengguna, per tabel, per kolom maupun per opersi yang boleh dilakukan.

Contoh : GRANT REVOKE LOCK TABLE

Page 18: Pengantar SQL

Pengendalian Transaksi

Diguakan untuk mengendalikan eksekusi transaksi

Contoh : COMMIT ROLLBACK

Page 19: Pengantar SQL

Pengendalian Programatik

Mencakup pernyataan-pernyataan yang berhubungan dengan pernyataan SQL dalam bahasa lain

Misalnya yang digunakan bersama perintah bahasa COBOL

Contoh : DECLARE OPEN CLOSE

Page 20: Pengantar SQL

Bekerja dengan SQL

Penulisan SQL pada berbagai DBMS sangat bervariasi

Ada beberapa DBMS yang hanya mendukung beberapa perintah SQL

Contoh penulisan : SELECT * FROM tblpengarang SELECT * FROM tblpengarang; SELECT * ;

FROM tblpengarang

Page 21: Pengantar SQL

Antar muka MySql (1)

Untuk masuk ke dalam program MySQL pada prompt jalankan perintah berikut ini: C:\> MYSQL (Enter)

Selanjutnya akan masuk tampilan sebagai berikut :

Page 22: Pengantar SQL

Antar muka MySql (2)

Page 23: Pengantar SQL

Contoh pengimplementasian

kd_peng

nama

alamat

kota

kelamin

kd_buku

judul

kd_peng

tblbuku

tblpengarang

Page 24: Pengantar SQL

Menciptakan Data base dan tabel

Membuat database baru : create database namadatabase; CREATE DATABASE Buku

Menampilkan Database SHOW DATABASES;

Membuka sebuah Database use namadatabase; USE Buku;

Page 25: Pengantar SQL

Menciptakan Data base dan tabel (2)

Perintah untuk membuat tabel baru adalah: create table namatabel (struktur); Contoh :

* Menciptakan Tabel Pengarang CREATE TABLE tblpengarang(

kd_peng INTEGER,nama CHAR(15),alamat CHAR(30),kota CHAR(15),kelamin CHAR(1));

Page 26: Pengantar SQL

Menciptakan Data base dan tabel (3)

* Menciptakan tabel buku CREATE TABLE tblbuku(

kd_buku INTEGER NOT NULL,judul CHAR(30),kd_peng INTEGER,PRIMARY KEY (kd_buku),FOREIGN KEY (kd_peng));

Menampilkan daftar Tabel SHOW TABLES:

Page 27: Pengantar SQL

Mengisi Data

Untuk memasukkan sebuah baris (record) kedalam tabel MySQL adalah sebagai berikut: INSERT INTO namatabel VALUES(kolom1,

kolom2, kolom3,…); Contoh :

INSERT INTO tblpengarang VALUES (1, 'Ashadi', 'Jl. Beo 34', 'Yogya', 'P');

Page 28: Pengantar SQL

Menampilkan isi tabel

Isi tabel dapat ditampilkan dengan menggunakan perintah SELECT

Untuk melihat semua kolom dari suatu tabel: SELECT * FROM tblpengarang;

Untuk melihat kolom(-kolom) tertentu: SELECT nama FROM tblpengarang; SELECT judul,kd_peng FROM tblbuku

Secara umum: SELECT <nama kolom,...> FROM <nama tabel>;

Page 29: Pengantar SQL

Menampilkan data tertentu

Digunakan kata WHERE Digunakan untuk membatasi hasil SELECT

yang ditampilkan berdasarkan kondisi yang ditentukan.

Contoh: SELECT nama FROM tblpengarang

WHERE nama = 'Amir Hamzah'; SELECT nama, alamat FROM tblpengarang

WHERE kota= “Yogya”; Bisa menggunakan >, <, <> (atau !=), >=, <=

Page 30: Pengantar SQL

Struktur Tabel

Table peserta nopeserta integer, nama varchar(20), kode_instansi char(5) references instansi, prestasi integer

Table instansi kode_instansi char(5), nama_instansi char(30), constraint fk_instansi primary key

(kode_instansi));

Page 31: Pengantar SQL

Isi Data (1)

Data Peserta (1,'Dora','PLN',98); (2,'Momon','PLN',80); (3,'Arbi','BRI',90); (4,'Yoni','BRI',90); (5,'Doni','POS',80);

Page 32: Pengantar SQL

Isi Data (2)

Data Instansi ('PLN', 'Perusahaan Listrik Negara'); ('BRI', 'Bank Rakyat Indonesia'); ('POS', 'PT. Pos Indonesia');

Page 33: Pengantar SQL

Operasi Join

Untuk menampilkan data dari 2 tabel Select tabel1.namafield,

tabel2.namafield From tabel1, tabel2 Where tabel1.pk = tabel2.fk

Page 34: Pengantar SQL

join

select nama, prestasi, intansi.nama_instansi

from peserta, instansi where

peserta.kode_instansi=instansi.kode_instansi;

Page 35: Pengantar SQL

Menggunakan Alias

select nama, prestasi, i.nama_instansi from peserta p, instansi i where

p.kode_instansi=i.kode_instansi;