21.10 -
Perancangan Basis Data
No comments
Bahasa Query Komersil
SQL (Structure Query Language)
1.Sejarah SQL
Sejarah dari SQL tidak lepas dari sejarah project dari IBM yang bernama System R. Tujuan dari project ini adalah untuk penelitian Relational ( hubungan ) Databases Server. Project ini dibuat pada laboratorium penelitian IBM di San Jose California. Project tersebut diniatkan untuk mendemonstrasikan keunggulan penggunaan fitur dari relasi pemodelan yang akan diterapkan pada suatu sistem untuk memenuhi kebutuhan database modern server.Project System R ini telah memecahkan permasalahan yaitu permasalahan tentang tidak adanya bahasa baku pada relasional database. Sehingga dengan adanya bahasa yang baku, setiap database dapat diacu dengan mudah. Sequel adalah nama bahasa yang diasung oleh adanya project System R ini yang didesain oleh R.F Boyce dan D.D. Chamberlin. Dalam pembuatan project tersebut, bahasa Sequel berganti nama menjadi SQL karena kata “Sequel” bermasalah dalam trademark.
Project System R terbentuk dari 3 tahap, tahap pertama dinamakan tahap ke-0 sekitar tahun 1974-1975. Pada tahap ini hanya sebagian kecil yang di-implementasikan pada SQL. Sebagai contoh, fungsi JOIN ( menggunakan data dari beberapa table) belum diterapkan namun hanya single user version yang dulu diterapkan. Tujuan pada tahap ini adalah untuk mengetahui apakah implementasi pada beberapa sistem dapat diterapkan.
Tahap ke-1 dimulai pada tahun 1976-1977. Semua kode program ditulis pada tahap ke-0 sebagai awalan. Pada tahap ke-1 ini terdiri dari keseluruhan sistem, hal ini berarti pada tahap ini telah banyak hal baru dibuat. Sebagai contoh telah terbentuknya multiuser dan penggunaan JOIN.Tahap terakhir dari System R adalah sistem ini telah terinstal di beberapa komponen dalam IBM dan sebagian besar dari client IBM. Tahap ini terjadi sekitar tahun 1978-1979.
Para pengembang menggunakan pengetahuan yang dimiliki dan teknologi dari penerapan pada 3 tahap untuk membuat SQL/DS. SQL/DS adalah relational database server yang bersifat komersil pertama milik IBM. Pada tahun 1981, SQL/DS menjadi paket penjualan dari sistem operasi DOS/VSE, dan versi VM/CMS muncul tahun 1983. Pada tahun yang sama DB2 juga telah dilauncing. Sekarang ini DB2 telah banyak digunakan oleh beberapa sistem operasi.
IBM telah mempublikasikan idenya mengenai pengembangan dari System R pada suatu konferensi atau seminar mengenai relational database server sehingga perusahaan lain seperti Oracle menggunakan SQL sebagai bahasa databasenya. Dalam beberapa tahun sekarang ini telah muncul produk dari SQL pada dunia IT. Dan akhirnya SQL menjadi bahasa yang compatible dengan semua sistem operasi baik yang besar maupun yang kecil.
2.Jenis SQL
1.Interactive : langsung dapat dioperasikan.
2.Embedded : disisipkan ke dalam sebuah program
(
Cobol, C, Fortran )
3.Steatmen SQL
1. Data Definition Language ( DDL )
2. Data Manipulation Language ( DML )
3. Data Access
4. Data Integrity
5. Auxiliry
1. DDL atau Data Definition Language adalah kumpulan perintah SQL yang dapat digunakan untuk membuat dan mengubah struktur dan definisi tipe data dari objek-objek database seperti tabel, index, trigger, view, dan lain-lain.
Contoh perintah DDL :
2. Data Manipulation Language ( DML )
3. Data Access
4. Data Integrity
5. Auxiliry
1. DDL atau Data Definition Language adalah kumpulan perintah SQL yang dapat digunakan untuk membuat dan mengubah struktur dan definisi tipe data dari objek-objek database seperti tabel, index, trigger, view, dan lain-lain.
Contoh perintah DDL :
- Membuat tabel
CREATE TABLE
Digunakan untuk membuat tabel. Syntax umumnya sebagai berikut :
Digunakan untuk membuat tabel. Syntax umumnya sebagai berikut :
CREATE
TABLE [schema, ] table
(
column datatype [DEFAULT expr][,...]);
- Menghapus tabel
DROP TABLE
Digunakan untuk melakukan penghapusan tabel. Melakukan penghapusan table dengan perintah DROP, berarti mengerjakan hal berikut :
Semua data dan struktur dari table akan dihapus Semua transaksi pending akan di-commit Semua indeks akan dihapus Perintah drop ini tidak bisa di-rollback Sebagai contoh, jika kita ingin menghapus tabel dept, maka yang harus dilakukan adalah :
Digunakan untuk melakukan penghapusan tabel. Melakukan penghapusan table dengan perintah DROP, berarti mengerjakan hal berikut :
Semua data dan struktur dari table akan dihapus Semua transaksi pending akan di-commit Semua indeks akan dihapus Perintah drop ini tidak bisa di-rollback Sebagai contoh, jika kita ingin menghapus tabel dept, maka yang harus dilakukan adalah :
DROP
TABLE dept;
- Menambah /menghapus kolom
- Statemen ALTER TABLE digunakan untuk :
~ Menambahkan kolom baru
Untuk menambah kolom baru, syntax umumnya sebagai berikut :
ALTER
TABLE table
ADD
(column datatype [DEFAULT expr]
[, column datatype]...);
~ Memodifikasi kolom yang sudah ada
Kita dapat memodifikasi kolom dengan mengubah tipe datanya, ukuran dan nilai defaultnya.
Sintaks dari perintah ALTER TABLE untuk memodifikasi kolom sebagai berikut :
ALTER
TABLE table
MODIFY
(column datatype [DEFAULT expr]
[, column datatype] ... );
View adalah tabel bayangan. Tidak menyimpan data secara fisik. Biasanya berupa hasil query dari tabel-tabel dalam sebuah database. Syntax untuk melakuakn VIEW adalah :
CREATE
VIEW <namaTabel> AS
<SQLQuery>
Trigger adalah sebuah obyek dalam database yang berupa prosedur yang merespon setiap kali terdapat proses modifikasi pada tabel. Proses modifikasi berupa: Insert, Update dan delete. Syntax pembuatan Trigger:
CREATE
TRIGGER <namaTrigger> ON TABLE <namaTabel>
FOR
[DELETE] [,] [INSERT] [,] [UPDATE]
AS
<perintahSQL>
2. DML atau Data Manipulation Language adalah kumpulan perintah SQL yang berhubungan dengan pekerjaan mengolah data di dalam table.
- Penambahan data pada sebuah tabel
Syntax:
INSERT
INTO nama_tabel(field ke-1, ….. field ke-n)
VALUES(nilai_field_ke-1,
…. nilai_field_ke-n);
- Pembaruan data pada sebuah tabel
Syntax:
UPDATE
nama_tabel
SET
nama_field = data_baru
WHERE
nama_field = data_lama;
- Penghapusan data pada sebuah tabel
Syntax:
DELETE
FROM nama_tabel
[
WHERE kondisi];
- Pemilihan data dari satu atau beberapa tabel
Syntax :
SELECT
[DISTINCT] select_list
FROM
table_source
[WHERE
search_condition]
[GROUP
BY group_by_expression]
[HAVING
search_condition]
[ORDER
BY order_expression [ASC | DESC] ]
3. Data Access Yaitu perintah yang digunakan untuk mengontrol hak akses pada suatu database.
Perintah Data Control Language (DCL)
:
- GRANT
- REVOKE
Contoh penggunaan perintah DCL :
- Memberikan hak akses UPDATE pada tabel MHS terhadap user FAIZ
GRANT UPDATE ON MHS TO FAIZ;
- Mencabut Hak Akses UPDATE pada tabel MHS dari user FAIZ
REVOKE UPDATE ON MHS FROM FAIZ;
4. Data Integrity (Recover Table) Yaitu perintah yang digunakan untuk mengembalikan data sebelum terjadi kerusakan.
Perintah Recover Tabel
- RECOVER TABLE
Contoh penggunaan perintah recover
table
- Kembalikan keadaan data mahasiswa seperti pada saat sebelum terjadi kerusakan
RECOVER TABLE MHS;
5. Auxiliry Yaitu Perintah yang
digunakan untuk mengubah data maupun kolom pada tabel.
Perintah Auxiliary :
- UNLOAD
- LOAD
- RENAME
Contoh penggunaan Perintah Auxiliary
:
- Ubah semua data mahasiswa ke bentuk ASCII dan disimpak ke file text di directory /home/indra/
UNLOAD TO "home/indra"
DELIMITER "|" SELECT * FROM MHS;
- Merubah file text ke tabel MHS_2 di directory home/indra;
LOAD FROM "home/indra"
DELIMITER "|" INSERT INTO MHS_2;
- Merubah nama tabel MHS menjadi KELAS
RENAME TABLE MHS TO KELAS;
0 komentar:
Posting Komentar