PEMROGRAMAN
SQL
(Structured
Query Language)
Hai haiiiiiii.
Kenalin gue
Mahasiswa dari salah satu Perguruan Tinggi Teknik yang ada di Jakarta. Sekarang
gue mau bahas ulang tentang pelajaran yang baru gue dapet dari dosen matakuliah
Pemrograman SQL pas di perkuliahan tadi pagi.
Nah, sebelumnya
kalan udah tau belum apa ang di maksud dengan SQL???
Hayoo.. pada tau ga?
……………………?????
Yaudah deh dari pada
pusing2 nannyain apa itu SQL mari kita bahas bersama.
Here we go…………
Apa itu SQL?
SQL atau
Structure Query Language merupakan bahasa standar yang ditetapkan oleh America National Standards
Institute (ANSI) pada tahun 1999 untuk mengakses dan memanipulasi data pada
Database Relational. Karena sifatnya standar maka setiap software RDMS harus
menerapkan bahasa SQL dengan diperbolehkan untuk mengembangkan atau menyertakan
perintah-perintah yang non standar. S-Q-L atau yang dulunya dibaca “Sequel” ini
dikembangkan oleh IBM pada pertengahan 1970s. Sekarang SQL merupakan bahasa
standar internasional untuk pembuatan (creating) dan query database relational.
Nah kita kan udah tau tuh, apa itu SQL
atau apa itu pengertian dari SQL. Sekarang gue mau bahas tentang penulisannya.
Yang perlu
di perhatikan dalam penulisannya ialah:
- Perintah
pada pemrograman SQL bersifat tidak
case sensitive sehingga perintah dapat ditulis dalam huruf besar
maupun kecil.
- Perintah
dapat ditulis satu atau beberapa baris untuk memberikan komentar pada
perintah SQL. Gunakan tanda minus “ - - “ untuk komentar 1 baris,
atau di antara tanda “ \* “ dan “ *\ “ untuk komentar beberapa
baris.
- Antar
klausa perintah biasanya ditulis pada baris yang berbeda, ini tidak akan
mempengaruhi program.
- Keywords
tidak dapat dipisah antar baris.
- Setiap
akhir perintah SQL (tidak baris) diakhiri dengan tanda titik koma (;).
Lanjut
ke komponen-komponen SQL yaaaaahhhhh….:)
Nah,
di bawah iniadalah komponen-komponen SQL. Bisa dilihat sendiri dibawah tuh.
LANJUTTTTTT!!!!. Pembahasan kita sekaran berlanjut
kepada perintah-perintah yang akan di gunakan dalam program SQL.
Yuk disimak dulu :D
Lanjutin terus bacanya sampe kebawah ya……
A. Data Definition Language (DDL)
Perintah yang
digunakan untuk mendefinisikan struktur Objek database seperti membuat tabel,
mengubah struktur tabel, menghapus tabel. Perintah yang digunakan CREATE,
ALTER, DROP, dan RENAME.
a.
Create, adalah perintah untuk membuat termasuk diantaranya
membuat database pada baru, tabel baru, view baru dan kolom. Sintak untuk
membuat database baru adalah sebagai berikut:
CREATE DATABASE
namadatabase; Contoh : create database mahasiswa;
Keterangan : Membuat dabase baru dengan nama mahasiswa. Sintak untuk membuat tabel baru adalah sebagai berikut:
Keterangan : Membuat dabase baru dengan nama mahasiswa. Sintak untuk membuat tabel baru adalah sebagai berikut:
CREATE TABLE namatabel
(namakolom typekolom(size), namakolom typekolom(size),…);
Contoh : create table mahasiswa (nim varchar(15), nama varchar(35), jurusan varchar(15));
Keterangan : Membuat tabel baru dengan nama siswa yang terdiri dari 3 fields/kolom. Kolom nim bertype string, kolom nama bertype string dan kelas bertype integer.
b. Alter, adalah perintah untuk mengubah struktur tabel yang telah dibuat. Fungsinya mencakup mengganti nama tabel, menambah kolom, mengubah kolom, menghapus kolom, maupun memberikan atribut pada kolom.
Sintak dasarnya yaitu:
ALTER TABLE namatabel ADD namakolom typekolom(size);
Contoh : alter table mahasiswa add alamat varchar(50);
Keterangan : Menambahkan kolom baru dengan nama alamat bertype string panjang 50 karakter.
Perintah untuk mengganti nama kolom/field yaitu ;
ALTER TABLE nama_tabel ADD/MODIFY nama field yang diganti nama_field_baru type_data(lebar_field);
Contoh : alter table mahasiswa change alamat alamat_rumah varchar(50);
Keterangan : Mengubah field alamat menjadi alamat_rumah bertype string dengan panjang 50 karakter.
Perintah menghapus kolom atau field :
ALTER TABLE namatabel DROP namakolom;
Contoh : create table mahasiswa (nim varchar(15), nama varchar(35), jurusan varchar(15));
Keterangan : Membuat tabel baru dengan nama siswa yang terdiri dari 3 fields/kolom. Kolom nim bertype string, kolom nama bertype string dan kelas bertype integer.
b. Alter, adalah perintah untuk mengubah struktur tabel yang telah dibuat. Fungsinya mencakup mengganti nama tabel, menambah kolom, mengubah kolom, menghapus kolom, maupun memberikan atribut pada kolom.
Sintak dasarnya yaitu:
ALTER TABLE namatabel ADD namakolom typekolom(size);
Contoh : alter table mahasiswa add alamat varchar(50);
Keterangan : Menambahkan kolom baru dengan nama alamat bertype string panjang 50 karakter.
Perintah untuk mengganti nama kolom/field yaitu ;
ALTER TABLE nama_tabel ADD/MODIFY nama field yang diganti nama_field_baru type_data(lebar_field);
Contoh : alter table mahasiswa change alamat alamat_rumah varchar(50);
Keterangan : Mengubah field alamat menjadi alamat_rumah bertype string dengan panjang 50 karakter.
Perintah menghapus kolom atau field :
ALTER TABLE namatabel DROP namakolom;
Contoh : alter table
mahasiswa drop alamat_rumah;
Keterangan :
Menghapus Kolom alamat_rumah dari tabel mahasiswa.
c. Drop, adalah perintah untuk menghapus
database dan tabel.
Sintak untuk menghapus database
yaitu :
DROP DATABASE namadatabase;
Contoh : drop database
mahasiswa;
Keterangan : Menghapus database
mahasiswa.
Sintak untuk menghapus tabel yaitu :
DROP TABEL namatabel;
Contoh : drop tabel nama;
Keterangan : Menghapus tabel nama.
d. Rename, adalah
perintah untuk mengganti nama tabel atau
nama database.
Sintak
dasarnya yaitu :
RENAME namatabelyangdiganti TO namatabelbaru;
Contoh : rename siswa to mahasiswa;
Keterangan : Mengubah tabel siswa
menjadi mahasiswa.
Pada DDL ini
ada beberapa yang perlu diperhatikan yaitu :
- Nama tabel
haru unik
- Nama kolom
ditulis dalam tanda kurung dan dipisahkan dengan tand koma (,).
- Pada nama
kolom terakhir tidak boleh dipakai tanda koma.
- Setiap
kolom harus memiliki type data dan lebarnya.
-
Constraints (batasan) bisa berupa batasan pada kolom dan batasan pada tabel.
Data
Definition Language (DDL)
Menambahkan Constraint
Kegunaan constraint :
- Memeberikan aturan pada tingkat table
- Membatasi manipulasi tertentu pada tabel
- Menjaga integritas data
- Menjaga validitas data
Jenis-jenis constraint :
Menambahkan Constraint
Kegunaan constraint :
- Memeberikan aturan pada tingkat table
- Membatasi manipulasi tertentu pada tabel
- Menjaga integritas data
- Menjaga validitas data
Jenis-jenis constraint :
- NOT
NULLsuatu kolom haru memiliki nilai tertentu (tidak boleh kosong).
- UNIQUE,
Suatu kolom harus todak boleh memiliki nilai yang sama (tetapi boleh
null).
- PRIMARY
KEY
- FOREIGN
KEY
- CHECK
a. Syntax
tanpa Constraints
Create
table:
CREATE TABLE nama_tabel
(lebar_field),
...
...
Nama field ke-n tipe_data
(lebar_field),
);
Contoh:
CREATE TABLE barang (
kode_barang char(6),
nama_barang varchar2(25),
satuan_barang varchar(20),
stok_barang number(4)
);
b. Syntax dengan Constraints
Untuk membuat tabel acuan
(references) sebelum tanda ‘)’ tambahkan sintak :
Constraint nama_constraint primary
key (nama_field_primarykey) notnull);
Untuk membuat tabel yang mengacu
pada tabel lain (tabel relasi) sebelum tanda ')' tambahkan sintak:
Constraint nama_constraint primary
key (nama_field_primarykey-1,…,nama_field_primarykey-n),
Constraint nama_constraint
foreignkey (nama_field_foreignkey-1)
References nama_tabel_acuan-1
(nama_field_primarykey-1),
.
.
Constraint nama_constraint
foreignkey (nama_field_foreignkey-n)
References nama_tabel_acuan-n
(nama_field_primarykey-n)
);
Contoh
program:
CREATE TABLE
barang (
kode_barang char(6),
nama_barang varchar(25),
satuan_barang varchar(20),
stok_barang int,
constraint
pk_barang primary
key (kode_barang)
);
CREATE TABLE pasok (
kode_pasok
char(10),
kode_barang
char(6),
kode_suplier
char(5),
tanggal_pasok
date,
jumlah_pasok
int,
constraint
pk_pasok primary key
(kode_pasok),
constraint f k_pasok_barang foreign
key
(kode_barang),
references barang (kode_barang),
constraint f k_pasok_suplier foreign
key
(kode_suplier),
references suplier
(kode_suplier)
);
B. Data Manipulation Language (DML)
Perintah yang digunakan untuk manipulasi data seperti menambah, mengedit, menghapus data. Perintah yang digunakan INSERT, SELECT, DELETE, UPDATE, MERGE.
a. Insert, berfungsi untuk menambah informasi/data baru ke dalam tabel.
Sintak dasarnya seperti berikut :
INSERT INTO namatabel (kolom) VALUES (value)
b. Select, berfungsi untuk menampilkan data dari tabel.
Sintak dasarnya seperti berikut:
SELECT namakolom. namakolom, ... FROM namatabel WHERE kriteria;
Contoh :
a) SELECT nim, nama, jurusan FROM mahasiswa;
b) SELECT * FROM mahasiswa;
c) SELECT nim,nama,jurusan FROM mahasiswa WHERE jurusan = ‘Teknik Informatika’;
d) SELECT * FROM mahasiswa WHERE nama like ‘WI%’ ORDER BY nama ASC;
Keterangan :
- Perintah WHERE merupakan
Optional tidak harus disertakan seperti SELECT dan FROM.
- Contoh ‘a’ menampilkan semua
informasi nim,nama,jurusan dari data mahasiswa.
- Contoh ‘b’ menampilkan semua
data mahasiswa.
- Contoh ‘c’ menampilkan semua
informasi nim,nama,jurusan dari data mahasiswa jurusan Teknik
Informatika.
- Contoh ‘d’ menampilkan semua
data mahasiswa yang namanya diawali dengan “WI” dan diurutkan berdasarkan
nama secara Ascending.
c. Delete, berfungsi untuk menghapus informasi/data pada tabel.
Sintaknya sebagai berikut :
DELETE FROM namatabel WHERE keriteria;
Contoh : DELETE FROM mahasiswa WHERE nama = ‘WIWIT WIDYA PANGESTIKA’;
Keterangan : Menghapus data mahasiswa yang memiliki nama “WIWIT WIDYA PANGESTIKA“
d. Update, berfungsi untuk memperbaiki informasi/data pada tabel.
Sintaknya sebagai berikut :
UPDATE namatabel SET namakolom=value WHERE keriteria;
C. Data Control Language (DCL)
Perintah yang digunakan untuk mengatur perijinan akses terhadap database. Perintah yang digunakan antara lain :
- GRANT
- REVOKE
- COMMIT
- ROLLBACK
- SAVEPOINT
Komponen
tabel
- ·
Tabel?
Nomor
|
Nama
|
NIM
|
- ·
Field?
Nama
|
- ·
Record?
- ·
Entity?
Nomor
|
Nama
|
NIM
|
TIPE DATA
DASAR
- NUMBER,
menyimpan bilangan bulat serta bilangan pecahan di belakang titik desimal.
Panjang maksimum tergantung pada implementasi oleh sistem operasi yang
digunakan, tetapi pada umumnya 38 digit.
- DATE, menyimpan data tanggal dan
waktu dalam tabel. Tipe data DATE menyimpan data tahun (termasuk abad),
bulan, hari, jam, menit, serta detik.
- RAW dan LONG
RAW,
digunakan untuk menyimpan data yang tidak perlu ditafsirkan. Tipe data ini
ditujukan untuk data biner atau string byte.
- BFILE, menyimpan
data biner tak terstruktur dalam berkas yang berada di luar database
(external file).
- BLOB,CLOB,dan
NCLOB,
ketiga tipe data ini memungkinkan kita menyimpan blok-blok data tidak terstruktur
berukuran besar (misalnya teks, gambar, klip video, serta berkas suara)
dalam format biner atau format karakter
- ROWID,
digunakan untuk menyimpan alamat (rowid) setiap baris dalam basis data
Udah
puas kan dapet penjelasan dari apa itu SQL???
Sekarang
gue bakal nge-share contoh sederhana pemrograman SQL ya.
TUGAS PEMROGRAMAN SQL
Langkah-langkah
menggunakan aplikasi PgAdminIII untuk pengerjaan SQL:
Contoh Table :
1. Table
Barang
Coding :
CREATE TABLE barang(
kode_barang
char(6),
nama_barang
varchar(25),
satuan_barang
varchar(20),
stock_barang
numeric(4),
constraint
pk_barang primary key (kode_barang)
);
);
2. Table
Suplier
Coding :
CREATE TABLE suplier(
kode_suplier
char(10),
nama_suplier
char(6),
telepon_suplier
char(5),
constraint
pk_suplier primary key (kode_suplier)
);
3. Table
Pasok
Coding :
CREATE TABLE pasok (
kode_pasok
char(10),
kode_barang
char(6),
kode_suplier
char(10),
tanggal_pasok
date,
jumlah_pasok
numeric,
constraint
pk_pasok primary key (kode_pasok),
constraint fk_pasok_barang foreign
key (kode_barang) references barang (kode_barang),
constraint fk_pasok_suplier foreign key (kode_suplier) references suplier (kode_suplier)
);
Screenshoot hasil dari pemrograan yang udah di jalanin pake codingan di atas ini dia nih, silahkan liat di bawah ini :
constraint fk_pasok_suplier foreign key (kode_suplier) references suplier (kode_suplier)
);
Screenshoot hasil dari pemrograan yang udah di jalanin pake codingan di atas ini dia nih, silahkan liat di bawah ini :
Semoga pemrograman SQL yang gua postingin
ini bermanfaat ya guys.
Eiitt nanti dlu…
Jangan lupa sering-sering kunjungin Blog
gue untuk pelajaran Matakuliah yang gue dapet selanjutnya ya.
See You!!! J
Tidak ada komentar:
Posting Komentar