Minggu, 21 April 2019

BELAJAR PEMROGRAMAN (Pengenalan SQL)

Pada bab ini Anda akan diperkenalkan  dengan SQL atau structured query languange. SQL adalah suatu statement atau pernyataan atau perintah standart yang digunakan untuk keperluan administrasi database.

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

Bab pengenalan SQL ini diberikan karena mulai bab selanjutnya materi kursus terkait dengan penggunaan database, 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  ibaratnya  suatu  wadah  yang  digunakan  untuk  menyimpan  data.  Supaya mudah diatur data-data itu disimpan dalam sebuah tabel.

Database  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 ya? ☺

Di dalam sebuah database 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 Anda 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  denganyang pernah kita masukkan sewaktu proses instalasi AppServ.

 Membuat Database 

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

Sebagai contoh silakan Anda buat database dengan nama: ‘perpustakaan’
Tips: sebaiknya nama database jangan mengandung spasi.

 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 Anda 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
Varchar bila datanya berbentuk karakter (maks 255 karakter)
Int bila datanya berbentuk bilangan bulat
Float bila datanya berbentuk bilangan real
Text bila datanya berbentuk karakter (size nya lebih besar dari varchar)
Date bila datanya berbentuk tanggal (th-bln-tgl)
Time bila datanya berbentuk waktu (jam:menit:detik)
Blob bila datanya berupa file

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.

OK… 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
 Setelah itu masukkan nama-nama field dan tipe datanya nya pada form yang muncul berikutnya

Sebagai latihan coba Anda buat lagi tabel ‘tabel_buku’ dengan field sebagai berikut
kode_buku      varchar(10)     PRIMARY KEY
judul_buku      text
kode_kat         varchar(5)
pengarang       varchar(30)
penerbit           varchar(30)
thn_terbit        int

Tabel di atas dibuat dalam database ‘perpustakaan’. Dengan demikian terdapat 2 tabel dalam database ‘perpustakaan’.

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’
 Lalu klik tombol SQL pada menu atas PhpMyAdmin
 Kemudian tulis perintah SQL pada kotak ‘RUN SQL QUERY/QUERIES ON DATABASE …
 Selanjutnya klik GO.
Anda 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
 Lalu klik menu BROWSE pada bagian atas PhpMyAdmin
 Selanjutnya akan muncul semua record yang telah disimpan pada tabel tersebut
Sebagai latihan coba masukkan record-record berikut ini ke dalam tabel masing-masing menggunakan query SQL.
Tabel ‘kategori_buku’
 Tabel ‘tabel_buku’

 Mengedit Record 

Apabila Anda 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, Anda 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, Anda 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 

Anda juga bisa menggunakan function yang sudah disediakan oleh MySQL, seperti AVG() untuk  menghitung  rata-rata  nilai,  MAX()  untuk  menghitung  nilai  maksimum, untuk  mencari  nilai  minimum,  COUNT()  untuk  menghitung  cacah  data,  SUM() menjumlahkan nilai dari beberapa data. 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’

Soal-soal tentang SQL
1.   Buatlah  database   dengan  nama  ‘dbmhs’.   Selanjutnya   buatlah  tabel untuk keperluan penyimpanan data perkuliahan mahasiswa dalam database tersebut.  

Berikut ini tabel-tabelnya:
Nama Tabel : ‘mhs’
     Nama Field :
     nim
     namaMhs
     tglLahir
     alamat
Nama Tabel: ‘mk’
     Nama Field :
     kodeMK
     namaMK
     sks
     smt
Nama Tabel: ‘ambilMK’
Nama Field :
     nim
     kodeMK
     nilai
Tentukan  sendiri  tipe  data yang  cocok  untuk  setiap  fieldnya,  dan  tentukan PRIMARY KEY nya. Sebutkan alasan pemilihan tipe data dan PRIMARY KEY nya. 



2.Selanjutnya sisipkan ke dalam masing-masing tabel 5 buah record menggunakan perintah SQL 
Script SQL (Perintahnya semua sama dengan ini, hanya merubah isinya)

jika sukses akan muncul seperti ini
Hasil 



 3. Tuliskan perintah SQL untuk proses berikut ini 
a. Hapus data mahasiswa yang bernim ‘1103181036’ 

 Sebelum proses

Proses menghapus


Sesudah proses


b. Hapus matakuliah yang memiliki jumlah SKS 2 yang ada di semester 1. 
Sebelum Proses

 Proses

 Sesudah proses

c. Hapus matakuliah yang memiliki jumlah SKS 2 s/d 4 
Sebelum proses 

  Proses

 Sesudah proses

d. Hapus matakuliah yang memiliki jumlah SKS 3 atau di semester 1.
Sebelum proses  

 Proses

 Sesudah proses

e. Ubahlah  nilai  matakuliah  berkode  ‘0002’  yang  diambil  mahasiswa  bernim ‘1103181035’ menjadi 3. 
Sebelum proses  

Proses

 Sesudah proses

f. Ubahlah semua nilai mahasiswa yang mengambil matakuliah berkode ‘0001’ menjadi satu lebihnya dari nilai semula. Contoh nilai sebelumnya 2, maka diubah menjadi 2+1 = 3. 
Sebelum proses  

 Proses

 Sesudah proses

g. Tampilkan data matakuliah (kode matakuliah, nama matakuliah) yang berada di semester 1
Sebelum proses

  Proses

  Sesudah proses



h. Tampilkan jumlah mahasiswa yang be ralamat di ‘Gresik’. 
Sebelum proses 


Proses 

 Sesudah proses

i. Tampilkan data mahasiswa (nim, nama mahasiswa) yang namanya mengandung kata ‘Rahmat’. 
Sebelum proses  

  Proses

 Sesudah proses

Tidak ada komentar:

Posting Komentar

CARA MEMBUAT LINE TRACER ANALOG MUDAH

CARA MEMBUAT LINE TRACER ANALOG Oke temen-temen sudah lama tak jumpa nih, apa kabaar? Semoga tetap sehat yaa. Kali ini saya kembali hadi...