Latihan 09 (Dasar-dasar SQL)

Latihan 09 (Dasar-dasar SQL) : Netbeans

Pengenalan SQL

SQL kependekan dari Structured Query Language. SQL atau juga sering disebut sebagai query merupakan suatu bahasa (language) yang digunakan untuk mengakses database. SQL dikenalkan pertama kali dalam IBM pada tahun 1970 dan sebuah standar ISO dan ANSII ditetapkan untuk SQL. Standar ini tidak tergantung pada mesin yang digunakan (IBM, Microsoft atau Oracle).Hampir semua software database mengenal atau mengerti SQL. Jadi, perintah SQL pada semua software database hampir sama. Terdapat 3 (tiga) jenisperintah SQL, yaitu:

1.DDL (Data Definition Language)
 
DDL merupakan perintah SQL yang berhubungan dengan pendefinisian suatu struktur database, dalam hal ini database dan table. Beberapa perintah dasar yang termasuk DDL ini antara lain: 
  • CREATE 
  • ALTER 
  • RENAME 
  • DROP
2.DML (Data Manipulation Language)
DML merupakan perintah SQL yang berhubungan dengan manipulasi atau pengolahan data atau record dalam table. Perintah SQL yang termasuk dalam DML antara lain:  
  • SELECT 
  • INSERT 
  • UPDATE  
  • DELETE

3.DCL (Data Control Language)
DCL merupakan perintah SQL yang berhubungan dengan manipulasi user dan hak akses (priviledges). Perintah SQL yang termasuk dalam DCL antara lain:
  • GRANT
  • REVOKE

Perintah DDL(Data Definition Laguage)
  1. CREATE
  2. ALTER
  3. DROP

Membuat Database

Perintah SQL untuk membuat database adalah sebagai berikut:
CREATE DATABASE [IF NOT EXISTS] nama_database;
Dari perintah diatas aturan penamaan pada nama_database sama seperti aturan penamaan pada sebuah variable, dimana secara umum nama database dapat terdiri dari huruf, angka dan under-score. Perintah yang terdapat di dalam tanda ‘[‘ dan ‘]’ – tanpa tanda petik / kutip satu bersifat optional (boleh disertakan atau juga tidak dituliskan). Jika perintah IF NOT EXISTS digunakan maka akan menghapus database yang memiliki nama yang sama.

Misalkan kita akan membuat database dengan nama database “persediaan”, perintah yang digunakan adalah sebagai berikut: 
* CREATE DATABASE persediaan;
Kemudian untuk melihat database yang telah dibuat dapat menggunakan perintah sebagai berikut:
* SHOW DATABASES;
Sebelum melakukan perubahan/manipulasi pada tabel atau record terlebih dahulu kita harus membuka atau mengaktifkan database terlebih dahulu, perintah yang digunakan untuk membuka database “penjualan” adalah sebagai berikut: 
* USE penjualan;

Menghapus Database

Perintah SQL untuk menghapus database adalah sebagai berikut:
DROP DATABASE [IF EXISTS] nama_database;
Dari perintah tersebut kita akan menghapus database “penjualan” yang telah dibuat dengan perintah sebagai berikut:
*DROP DATABASE penjualan;
Perintah IF EXISTS digunakan untuk memastikan bahwa database yang akan dihapus benar-benar ada.

Membuat Tabel

Perintah SQL untuk membuat tabel secara sederhana adalah sebagai berikut:
CREATE TABLE nama_table(
  Kolom1 TipeData[(size)],
  Kolom2 TipeData[(size)],
  …
Kolom_nTipeData[(size)]
);
Membuat tabel dengan PRIMARY KEY:
CREATE TABLE nama_table(
  Kolom1 TipeData[(size)],
  Kolom2 TipeData[(size)],
  …
Kolom_nTipeData[(size)],
  PRIMARY KEY(Kolom1 [, Kolom2, … Kolom_n])
);

Sebagai contoh kita akan membuat tabel “mahasiswa” dengan struktur tabel sebagai berikut:


Untuk membuat tabel “mahasiswa” di atas dengan “nim” sebagai PRIMARY KEY, perintah SQL yang digunakan adalah sebagai berikut:
CREATE TABLE mahasiswa(
Nim INT(8),
Nama_mhs VARCHAR(30),
Jurusan VARCHAR(20),
  PRIMARY KEY(NIM)
);

Selanjutnya untuk melihat tabel tersebut benar sudah ada pada database dengan menggunakan perintah SQL:
* SHOW TABLES;
Untuk melihat struktur tabel dari tabel “mahasiswa” secara mendetail perintah SQL yang digunakan adalah sebagai berikut:
* DESC mahasiswa;
DESC merupakan kependekan dari DESCRIBE (dapat ditulikan lengkap atau hanya 4 karakter awal) dan mahasiswa adalah nama tabel yang akan di lihat struktur tabaelnya.

Perintah ALTER TABLE

Perintah ini digunakan untuk menambah, menghapus atau mengubah dari struktur tabel yang telah terbentuk, perintah-perintah SQL ALTER yang umum digunakan adalah sebagai berikut:
1.Untuk menambah kolom
ALTER TABLE nama_table
ADD nama_kolom TipeData[(size)];
2.Perintah menambahkan PRIMARY KEY:
ALTER TABLE nama_table
ADD PRIMARY KEY(nama_kolom1 [,nama_kolom2,
nama_kolom_n]);
3.Untuk menghapus kolom:
ALTER TABLE nama_table
DROP[COLUMN] nama_kolom;
4. Untuk merubah tipe data:
ALTER TABLE nama_table
MODIFY [COLUMN] nama_kolom TipeData[(size)];
5.Mengubahnamakolomdantipe data:
ALTER TABLE nama_table
CHANGE nama_kolom_lama
nama_kolom_baru TipeData[(size)];

Sebagai contoh perhatikan tabel “mahasiswa” yang telah dibuat sebelumnya:


Mengubah Tipe

Masih dari tabel yang sama kita akan mengganti tipe dari kolom “NIM” pada tabel mahasiswa, perintah SQL ALTER TABLE yang digunakan: 
* ALTER TABLE mahasiswa MODIFY COLUMN NIM CHAR(8) NOT NULL;

Menghapus Kolom

Sekarang kita akan menghapus kolom “Tanggal_Lahir” dari tabel mahasiswa, perintah SQL ALTER TABLE yang digunakan:
*ALTER TABLE mahasiswa DROP COLUMN Tanggal_lahir;

Mengubah Nama Tabel

Perintah SQL yang digunakan untuk mengganti nama tabel adalah sebagai berikut:
RENAME TABLE nama_tabel TO nama_tabel_baru;
Atau
ALTER TABLE nama_tabel RENAME TO nama_tabel_baru;
Contoh:
* RENAME TABLE mahasiswa TO mhs;

 Perintah DROP

Perintah SQL yang digunakan untuk menghapus database atau tabel, perintah yang digunakan adalah sebagai berikut:
DROP DATABASE nama_database;
Perintah di atas digunakan untuk menghapus database, dan untuk menghapus tabel perintah yang digunakan:
DROP TABLE nama_tabel;
Contoh:
* DROP TABLE mhs;
Dari perintah di atas akan menghapus tabel “mhs”.

Perintah DML (Data Manipulation Language)

  1.  INSERT
  2.  UPDATE
  3.  DELETE
  4.  SELECT

PerintahSQL INSERT

Perintah SQL INSERT digunakan untuk menambahkan data baru pada data tabel, perintah yang digunakan adalah sebagai berikut:
  • INSERT INTO nama_tabel VALUES(‘str_nilai1’, ‘str_nilai2’, int_nilai3, nilai_n);
  • INSERT INTO nama_tabel(kolom1, kolom2, …kolom_n) VALUES(‘str_nilai1’, ‘str_nilai2’, int_nilai3, nilai_n);
  • INSERT INTO nama_tabel SELECT ‘str_nilai1’, ‘str_nilai2’, int_nilai3, nilai_n;
Sebagai contoh kita akan menambahkan data baru pada data tabel mahasiswa, perintah SQL INSERT yang digunakan adalah sebagai berikut:
1. Menambahkan satu record pada tabel mahasiswa, perintahnya:
* INSERT INTO mahasiswa
   VALUES(‘11130011’, ‘AretaDewi’, ‘Komp. Akuntansi’);

2. Menambahkanbeberapa record padatabelmahasiswa, perintahnya:
* INSERT INTO mahasiswa VALUES
  (‘11130011’, ‘AretaDewi’, ‘Komp. Akuntansi’),
  (‘11130012’, ‘Yudhistira’, ‘Komp. Akuntansi’),
  (‘11130013’, ‘Riyadi’, ‘Komp. Akuntansi’);

Perintah SQL UPDATE

Perintah SQL UPDATE digunakan untuk mengedit/mengubah data pada tabel, perintah yang digunakan adalah sebagai berikut:
UPDATE nama_tabel SET kolom = nilai_baru [WHERE kondisi];
Contoh:
1.Mengubah nama_mhs menjadi ‘Rajwa’ pada tabel mahasiswa yang mempunyai nim ‘11130011‘, perintahnya:
* UPDATE mahasiswa SET nama_mhs = ‘Rajwa’
   WHERE nim = ‘11130011’;

2.Mengubah nama_mhs menjadi ‘Raisa’ dan jurusan menjadi ‘Komputerisasi Akuntansi’ pada tabel mahasiswa yang mempunyai nim ‘11130012’, perintahnya:
* UPDATE mahasiswa SET
   nama_mhs = ‘Rajwa’,
   jurusan = ‘KomputerisasiAkuntansi’
   WHERE nim = ‘11130011’;

Perintah SQL DELETE

Perintah SQL DELETE digunakan untuk menghapus data pada tabel, perintah yang digunakan adalah sebagai berikut:
 DELETE FROM nama_tabel [WHERE kondisi];
Contoh:
1.Menghapus data pada tabel mahasiswa dengan nim ‘11130013’, perintahnya:
* DELETE FROM mahasiswa WHERE nim = ‘11130013’;
2.Menghapus semua data pada tabel mahasiswa dengan jurusan ‘Komp. Akuntansi’, perintahnya:
* DELETE FROM mahasiswa WHERE jurusan = ‘Komp. Akuntansi’;

Perintah SQL SELECT

Perintah SQL SELECT digunakan untuk menampilkan data pada tabel, perintah yang digunakan adalah sebagai berikut:
  • SELECT * FROM nama_tabel [WHERE kondisi]; 
  • SELECT kolom1, kolom2, kolom3, kolom_n FROM nama_tabel [WHERE kondisi];
Contoh:
1.    Menampilkan seluruh kolom pada tabel mahasiswa, perintahnya:
* SELECT * FROM mahasiswa;
2.    Menampilkan hanya beberapa kolom pada tabel mahasiswa, perintahnya:
* SELECT nim, nama_mhs FROM mahasiswa;
3.    Menampilkan seluruh kolom pada tabel mahasiswa dengan nim ‘11130012’, perintahnya:
* SELECT * FROM mahasiswa WHEREnim = ‘11130012’;

JOIN TABLE

Perintah JOIN TABLE digunakan untuk menggabungkan dua atau lebih tabel berdasarkan field-field pada tabel tersebut.
Lihat pada tabel ‘Orders’ di bawah ini:
dan lihat pada tabel ‘Customer’ di bawah ini:

INNER JOIN

Dengan INNER JOIN kita dapat menggabungkan dua atau lebih tabel, dimana semua baris pada tabel-tabel yang ditampilkan sesuai dengan kondisi join dan tidak ada nilai NULL pada sisinya.
Perintah SQL INNER JOIN adalah sebagai berikut:
  • SELECT kolom1, kolom2, kolom3, …kolom_n FROM tabel1 INNER JOIN tabel2 ON tabel1.kolom_PK =tabel2.kolom_FK;
Atau:
  • SELECT kolom1, kolom2, kolom3, …kolom_n FROM tabel1 JOIN tabel2 ON tabel1.kolom_PK = tabel2.kolom_FK;
Dari contoh di atas terdapat dua buah tabel “Orders” dan “Customer”, dari kedua tabel tersebut perhatikan bahwa kolom “CustomerID” pada tabel “Orders” mengacu pada kolom “CustomerID” yang ada pada tabel “Customer”. Relasi pada kedua tabel di atas adalah kolom “CustomerID”.

* SELECT Orders.OrderID, Customers.CustomerName, Orders.OrderDate  FROM Orders
   INNER JOIN Customers ON Orders.CustomerID=Customers.CustomerID;

Hasil dari queri tersebut, adalah:

OUTER JOIN

Dengan OUTER JOIN tabel akan digabungkan satu arah, sehingga memungkinkan ada data yang memiliki nilai NULL (kosong) di satu sisi. OUTER JOIN terbagi menjadi LEFT JOIN, dan RIGHT JOIN.

LEFT JOIN

Perintah LEFT JOIN akan menampilkan seluruh tabel dari tabel sisi kiri (tabel1), dengan menyamakan baris pada tabel sisi kanan (tabel2). Hasil yang ditampilkan akan terdapat nilai NULL (kosong) pada sisi kanan ketika data tidak sesuai.
Perintah SQL LEFT JOIN, adalah sebagai berikut:
  • SELECT kolom1, kolom2, kolom3, …kolom_n FROM tabel1 LEFT JOIN tabel2 ON tabel1.kolom_PK = tabel2.kolom_FK;
Atau:
  • SELECT kolom1, kolom2, kolom3, …kolom_n FROM tabel1 LEFT OUTER JOIN tabel2 ON tabel1.kolom_PK = tabel2.kolom_FK;
Contoh:
*SELECT Orders.OrderID, Customers.CustomerName, Orders.OrderDate FROM Orders LEFT JOIN Customers ON Orders.CustomerID=Customers.CustomerID;
Note: Perintah LEFT JOIN menampilkan baris dari sisi tabel kiri (Orders), bahkan jika tidak ada kesamaan pada sisi tabel kanan (Customer).

RIGHT JOIN

Perintah RIGHT JOIN akan menampilkan seluruh tabel dari tabel sisi kanan (tabel1), dengan menyamakan baris pada tabel sisi kiri (tabel2). Hasil yang ditampilkan akan terdapat nilai NULL (kosong) pada sisi kiri ketika data tidak sesuai.
Perintah SQL RIGHT JOIN, adalah sebagai berikut:
  • SELECT kolom1, kolom2, kolom3, …kolom_n FROM tabel1 RIGHT JOIN tabel2 ON tabel1.kolom_PK = tabel2.kolom_FK;
Atau:
  • SELECT kolom1, kolom2, kolom3, …kolom_n FROM tabel1 RIGHT OUTER JOIN tabel2 ON tabel1.kolom_PK = tabel2.kolom_FK;
Contoh:
* SELECT Orders.OrderID, Customers.CustomerName,Orders.OrderDate FROM Orders RIGHT JOIN Customers ON Orders.CustomerID=Customers.CustomerID;
Note: Perintah RIGHT JOIN menampilkan baris dari sisi tabel kanan (Customer), bahkan jika tidak ada kesamaan pada sisi tabel kiri (Orders).


Jika ada pertanyaan silakan berkomentar :)




Artikel Terkait:
Disqus Comments