Diposkan pada Pemrograman, PHP, SQL

SQL

Halooo, ketemu lagi nih. Pembahasan hari ini yaitu mengenai SQL

Nah SQL atau structured query languange adalah suatu statement atau pernyataan atau perintah standart yang digunakan untuk keperluan administrasi database.

Ada banyak software database yang mendukung SQL ini loh kawan. Software database  ini disebut juga SQL based DBMS (Database Management System). Beberapa di antaranya adalah MySQL, Oracle, MS. Access, MS. SQL, SQL Server dll.

Dalam hal ini software database yang digunakan adalah MySQL.  Mengapa  MySQL  yang  digunakan?  Ya…  karena  MySQL  adalah  DBMS  yang bersifat free alias gratis namun kehandalannya  tidak kalah dengan DBMS yang tidak free.

Tentang Database

Database itu  ibaratnya  seperti  sebuah  lemari  kabinet.  Dalam  lemari  kabinet  terdapat beberapa laci yang di dalamnya terdapat beberapa dokumen file atau data. Laci inilah yang diumpamakan tabel dari database dan dokumen  file atau data yang tersimpan dalam laci ibaratnya merupakan data atau record dari database. Bisa membayangkan? 😀

Di dalam sebuah database tidak hanya terdiri dari satu tabel loh, bisa terdapat lebih dari satu tabel.

Pada sebuah  tabel,  terdapat  unsur yaitu kolom  dan baris, seperti  halnya  tabel-tabel umum yang Anda kenal. Kolom pada database disebut juga field, dan barisnya disebut record.

Tentang PhpMyAdmin

Terkadang  dalam  mengatur  atau pengadministrasian  database  sangatlah  repot. Misalnya  membuat  database,  membuat  tabel,  mengubah  struktur  tabel,  menyimpan data ke database, mengedit data, menghapus data dsb.

Nah…   khusus   MySQL   terdapat   software   khusus   yang   dapat   dipergunakan   untuk pengadministrasian database supaya mudah dilakukan. Software ini bernama PhpMyAdmin.  Software  ini  merupakan  web  based  software  yang  dijalankan  melalui URL: http://localhost/phpmyadmin

Apabila kita menggunakan  AppServ atau XAMPP  maka ketika dipanggil URL di atas akan langsung masuk ke PhpMyAdmin.

Catatan:

Sebelum  masuk  ke  PhpMyAdmin  biasanya  kita  disuruh  memasukkan  username  dan password.  Username  dan  password  ini  sesuai  dengan yang pernah kita masukkan sewaktu proses instalasi AppServ.

Tampilan PhpMyAdmin

sqll.PNG

Membuat Database

Untuk membuat database baru dengan PhpMyAdmin, caranya adalah isikan nama database yang akan kita buat ke dalam bagian kotak CREATE NEW DATABASE lalu klik tombol CREATE.

Sebagai contoh kita membuat database dengan nama: ‘perpustakaan’

Tips: sebaiknya nama database jangan mengandung spasi.

sql

Membuat Tabel

Setelah database dibuat, selanjutnya kita bisa membuat tabel. Untuk membuat tabel baru dalam database yang telah kita buat caranya ketikkan nama tabel yang akan dibuat pada bagian CREATE NEW TABLE ON DATABASE XXX. ‘XXX’ di sini merupakan nama databasenya.

Selain itu masukkan pula jumlah fieldnya. Oleh karena itu sebaiknya sebelum proses pembuatan tabel hendaknya kita rancang terlebih dahulu nama-nama fieldnya sesuai yang dibutuhkan.

Dalam contoh ini andaikan kita akan membuat tabel ‘kategori_buku’

Tips: seperti halnya membuat nama database, untuk nama tabel juga sebaiknya jangan gunakan spasi.

Untuk tabel ‘kategori_buku’ misalnya kita desain seperti di bawah ini:

Tabel   : kategori_buku

Field    : kode_kat    varchar(5)           PRIMARY KEY nama_kat               varchar(20)

Keterangan:

Dalam tabel ‘kategori buku’ terdapat 2 buah field yaitu ‘kode_kat’ dan ‘nama_kat’. Field ‘kode_kat’  nanti  berisi  kode  kategori  dari  buku-buku  yang  tersimpan  dalam perpustakaan dan ‘nama_kat’ merupakan penjelasan yang berisi nama kategori terkait dengan  kode  kategorinya.  Misalnya  kode  kategori  buku  ‘X10’  itu  merupakan  kode kategori untuk buku tentang ‘MATEMATIKA’.

Varchar merupakan tipe data dari fieldnya. Tipe data ini harus dimiliki setiap field yang akan dibuat. Tipe data ini menentukan jenis atau sifat data yang akan disimpan dalam field tersebut. Terdapat beberapa tipe data yang bisa dipilih, yaitu

 

sql3

Catatan:

Khusus untuk varchar harus diberikan lebar size yang diinginkan, misalnya suatu field bertipe varchar(5). Maksud 5 di sini adalah banyak karakter yang bisa disimpan dalam field tersebut adalah 5 buah.

PRIMARY KEY adalah fitur yang ada dalam DBMS yang dapat digunakan untuk menjamin bahwa sebuah data itu tunggal. Dalam contoh di atas PRIMARY KEY diberikan pada field ‘Kode Kategori’. Tentu kita tahu bahwa suatu kode kategori buku   itu bersifat tunggal atau tidak boleh ada kode yang sama, seperti halnya kode karyawan atau kode mahasiswa. Bila suatu field sudah dijadikan PRIMARY KEY maka tidak mungkin ada data yang  sama  pada field  tersebut.  Apabila  kita  masukkan  kode  yang  sama,  maka  akan ditolak oleh sistem.

Setelah kita rancang tabelnya, kita bisa membuatnya. Berikut ini caranya:

1. Isikan nama tabel di kotak CREATE NEW TABLE ON DATABASE …

Dalam kasus ini masukkan ‘kategori_buku’

2. Masukkan jumlah field dari tabel yang akan dibuat pada NUMBER OF FIELDS

Dalam kasus ini masukkan ‘2’

3. Klik GO

sql1

 

Setelah itu masukkan nama-nama field dan tipe datanya nya pada form yang muncul berikutnya

sql2

 

Memasukkan Data/Record ke Tabel

Untuk memasukkan sebuah record ke tabel, perintah SQL nya adalah berikut ini

INSERT INTO nama_tabel (field1, field2, …) VALUES (data1, data2, ..);

Sebagai contoh misalkan kita akan memasukkan record kode kategori: ‘X001’ dan nama kategori: ‘MAJALAH’ ke tabel ‘kategori_buku’, maka perintahnya

INSERT INTO kategori_buku (kode_kat, nama_kat) VALUES (‘X001’, ‘MAJALAH’);

Catatan Penting:

Khusus  field  yang  bertipe  VARCHAR,  TEXT,  DATE,  TIME,  dan BLOB,  value  yang  akan dimasukkan  ke  tabel  harus  diapit  dengan  tanda  petik  tunggal,  misal  ‘X001’.  Namun untuk field bertipe data bilangan (INT, FLOAT) tanpa menggunakan tanda petik.

Dimanakah kita menuliskan perintah SQLnya? Ya… caranya adalah klik terlebih dahulu nama database yang kita gunakan pada kolom sebelah kiri dari PhpMyAdmin, dalam hal ini klik pada nama database ‘perpustakaan’

sqlll

 

Lalu klik tombol SQL pada menu atas PhpMyAdmin

sqllll

 

Kemudian tulis perintah SQL pada kotak ‘RUN SQL QUERY/QUERIES ON DATABASE …’

sql0

 

Selanjutnya klik GO.

Kita dapat menuliskan perintah atau query SQL lebih dari satu sekaligus.

Untuk melihat record yang telah tersimpan ke dalam tabel, caranya klik nama tabel yang mau dilihat recordnya pada sisi kiri PhpMyAdmin

0

 

Lalu klik menu BROWSE pada bagian atas PhpMyAdmin

1

 

Selanjutnya akan muncul semua record yang telah disimpan pada tabel tersebut

2

 

Sebagai latihan coba masukkan record-record berikut ini ke dalam tabel masing-masing menggunakan query SQL.

Tabel ‘kategori_buku’

Kode Kategori Nama Kategori
X002 REFERENSI
X003 SURAT KABAR
X004 JURNAL ILMIAH

Tabel ‘tabel_buku’

Kode Buku

 

Judul Buku

 

Kode

Kategori

Pengarang

 

Penerbit

 

Th. Terbit

 

B001

 

Pemrograman

Pascal

X002

 

Mr. X

 

PT. A

 

2003

 

B002

 

Pemrograman PHP X002

 

Mr. Y

 

PT. A

 

2004

 

B003

 

Kompas (Edisi X 2006) X003

 

 

 

2006

 

B004

 

Sains

Matematika

(Edisi XI 2008)

X004

 

 

LIPI

 

2008

 

B005

 

Tempo (Edisi XI 2008 X001

 

 

PT. B

 

2008

 

 

Mengedit Record

Apabila kita ingin mengedit record, perintah SQL nya adalah:

UPDATE nama_tabel SET field1 = value, field2 = value, … [WHERE syarat]

Dalam hal ini WHERE merupakan syarat yang bersifat optional. Bila WHERE tidak diberikan, maka proses update data diberikan ke semua record.

Contoh:

Perintah SQL untuk mengedit tahun terbit buku berkode ‘B001’ menjadi 2010.

UPDATE tabel_buku SET thn_terbit = 2010 WHERE kode_buku = ‘B001’;

Perintah SQL untuk mengedit tahun terbit buku berkode ‘B002’ menjadi 2004 sekaligus mengedit kode kategorinya menjadi ‘X002’.

UPDATE tabel_buku SET thn_terbit = 2004, kode_kat = ‘X002’ WHERE kode_buku = ‘B002’;

Perintah SQL untuk mengubah judul buku yang diterbitkan oleh PT. A pada tahun 2003 menjadi ‘XXX’.

UPDATE tabel_buku

SET judul_buku = ‘XXX’

WHERE thn_terbit = 2003 AND penerbit = ‘PT. A’;

Catatan:

Selain operator logika AND, kita juga bisa menggunakan OR sebagai operator logika ‘atau’.

Perintah  SQL  untuk  mengubah  nama  penerbit  menjadi  PT.  C dari semua  buku yang tahun terbitnya di atas 2004.

UPDATE tabel_buku

SET penerbit = ‘PT. C’ WHERE thn_terbit > 2004;

Catatan:

Untuk operator relasional, kita bisa menggunakan tanda =, >, >=, <=, <> (tidak sama dengan)

Perintah SQL untuk mengubah tahun terbit buku menjadi 2005 semuanya

UPDATE tabel_buku SET thn_terbit = 2005;

Menghapus Record

Sebuah record atau beberapa record dapat dihapus dari tabel dengan perintah SQL

DELETE FROM nama_tabel [WHERE syarat];

Contoh:

Perintah SQL untuk menghapus data buku yang berkode ‘B001’

DELETE FROM tabel_buku WHERE kode_buku = ‘B001’;

Perintah SQL untuk menghapus data buku dari penerbit PT. A yang tahun terbitnya 2004

DELETE FROM tabel_buku WHERE penerbit = ‘PT. A’ AND thn_terbit = 2004;

 

Tentang SQL SELECT

Perintah SELECT digunakan untuk mencari data atau menampilkan data pada field-field tertentu. Sintaksnya adalah :

SELECT field1, field2, … FROM nama_tabel [WHERE syarat ] [ORDER BY field DESC|ASC];

Keterangan:

ORDER BY digunakan untuk mensorting hasil data yang ditampilkan berdasarkan field tertentu baik secara DESCENDING atau ASCENDING.

Contoh:

Perintah SQL untuk menampilkan data (kode buku dan judul buku) dari buku yang minimal terbit pada tahun 2003.

SELECT kode_buku, judul_buku

FROM tabel_buku

WHERE thn_terbit >= 2003;

Perintah SQL untuk menampilkan data (untuk semua field) dari buku yang diterbitkan oleh PT. A

SELECT *

FROM tabel_buku

WHERE penerbit = ‘PT. A’;

Perintah  SQL  untuk  menampilkan  data  (kode  buku,  judul  buku,  tahun  terbit)  yang diurutkan  berdasarkan  tahun  terbit  mulai  dari  yang  paling  terbaru  sampai  dengan terlama.

SELECT kode_buku, judul_buku, thn_terbit

FROM tabel_buku

ORDER BY thn_terbit DESC;

Perintah SQL untuk menampilkan data (kode buku, judul buku dan nama kategori buku) dari buku yang diterbitkan oleh PT. A pada tahun 2003.

Untuk hal ini, kita harus bekerja di dalam 2 buah tabel sekaligus. Kode buku dan judul buku diperoleh dari tabel ‘tabel_buku’, sedangkan nama kategori diperoleh dari tabel ‘kategori_buku’.

Kedua tabel saling berhubungan karena masing-masing  terdapat field bernama ‘kode kategori’ atau ‘kode_kat’.

SELECT tabel_buku.kode_buku, tabel_buku.judul_buku, kategori_buku.nama_kat

FROM tabel_buku, kategori_buku

WHERE tabel_buku.kode_kat = kategori_buku.kode_kat AND tabel_buku.penerbit = ‘PT. A’ AND tabel_buku.thn_terbit = 2003;

Perintah SQL  untuk  menampilkan  kode  buku  dan  judul  buku,  yang  judul  bukunya mengandung kata ‘MATEMATIKA’

SELECT kode_buku, judul_buku

FROM tabel_buku

WHERE judul_buku LIKE ‘%MATEMATIKA%’;

Perintah SQL untuk menampilkan  kode buku dan judul buku, yang kata depan judul bukunya adalah ‘MATEMATIKA’

SELECT kode_buku, judul_buku

FROM tabel_buku

WHERE judul_buku LIKE ‘MATEMATIKA%’;

Perintah  SQL  untuk  menampilkan  kode  buku  dan  judul  buku,  yang  judul  bukunya berakhiran dengan kata ‘MATEMATIKA’

SELECT kode_buku, judul_buku

FROM tabel_buku

WHERE judul_buku LIKE ‘%MATEMATIKA’;

Penggunaan Aggregate Function

Kita juga bisa menggunakan function yang sudah disediakan oleh MySQL, seperti AVG() untuk  menghitung  rata-rata  nilai,  MAX()  untuk  menghitung  nilai  maksimum, MIN() untuk  mencari  nilai  minimum,  COUNT()  untuk  menghitung  cacah  data,  SUM() untuk menjumlahkan nilai dari beberapa data.

Contoh:

Perintah SQL untuk mencari jumlah buku yang ada di dalam database:

SELECT count(kode_buku) FROM tabel_buku;

Perintah SQL untuk mencari jumlah buku yang memiliki kode kategori ‘X002’:

SELECT count(kode_buku) FROM tabel_buku WHERE kode_kat = ‘X002’;


Untuk pembahasan mengenai SQL lebih lanjut bisa cek di postingan selanjutnyaa..

Terimakasih telah berkunjung. Semoga bermanfaat.