Rabu, 16 September 2015

Pemrograman SQL

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:
  1. Perintah pada pemrograman SQL bersifat tidak case sensitive sehingga perintah dapat ditulis dalam huruf besar maupun kecil. 
  2. 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. 
  3. Antar klausa perintah biasanya ditulis pada baris yang berbeda, ini tidak akan mempengaruhi program. 
  4. Keywords tidak dapat dipisah antar baris. 
  5. 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, DROPdan 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: 
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 : 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 :
  • 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 :







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