26/08/15

DDL (Data Definition Language) Pada SQL Database

DDL (Data Definition Language) Pada SQL Database - Pada artikel sebelumnya telah dibahas perintah-perintah sql khususnya data manipulaion language (dml). Pada artikel ini akan dibahas perintah sql khususnya data definition language (ddl). Di antara materi yang dibahas pada artikel ini adalah pembuatan table beserta komponennya, seperti primary key, foreign key, dan juga constraint, pembuatan view, dan lain-lain.
DDL (Data Definition Language) Pada SQL Database_
image source: udayarumilli.com
Pembuatan Table

Pembahasan yang pertama yang akan dibahas adalah membuat sebuah table. Di oracle sudah terdapat utilitas untuk membuat sebuah table dengan menggunakan object browser. Akan tetapi pengguna tidak mengetahui sintaks atau perintah dalam sql, walaupun oracle juga menyediakan utilitas untuk melihat perintah sql untuk membuat table yang ingin dibuat.

Berikut ini adalah sintaks atau perintah secara umum dari membuat table di dalam sql.
CREATE TABLE nama_table (
nama_kolom tipe_data NOT NULL / NULL,
PRIMARY KEY ( nama_kolom_primary_key ),
FOREIGN KEY ( nama_kolom_foreign_key ) REFERENCES table_referensi);
Contoh:

Membuat sebuah table staff.
CREATE TABLE staff (
staff_no varchar2(4) NOT NULL,
f_name varchar2(10),
l_name varchar2(10),
position varchar2(15),
dob date,
salary number,
branch_no varchar2(4),
PRIMARY KEY (staff_no),
FOREIGN KEY (branch_no) REFERENCES branch);

Merubah Sebuah Table

Table yang telah dibuat di dalam database dapat diubah definisinya. Dengan menggunakan perintah 'ALTER TABLE' maka table dapat dirubah. Di antara perubahan yang dapat dilakukan adalah:
  • Menambah sebuah kolom ke dalam sebuah table.
  • Menghapus sebuah kolom dari table.
  • Menambah sebuah constraint di dalam table.
  • Menghapus constraint di table.
  • Membuat sebuah default pada kolom.
  • Menghapus default pada kolom.

Contoh:
ALTER TABLE staff
ALTER position DROP DEFAULT;
ALTER TABLE staff
ALTER sex SET DEFAULT 'F';

Menghapus Sebuah Table

Untuk menghapus sebuah table yang tidak digunakan lagi dapat menggunakan perintah:
DROP TABLE nama_table [ RESTRICT | CASCADE ];

Contoh:

Menghapus table property_for_rent.
DROP TABLE property_for_rent;

Membuat Sebuah View

Membuat sebuah view telah dibahas pada modul 12. Tapi akan ditampilkan kembali sintaks untuk membuat sebuah view.
CREATE VIEW nama_view (nama_kolom)
AS subselect [WITH [CASCADE | LOCAL ] CHECK OPTION]
Contoh dari view adalah sebagai berikut:
CREATE VIEW staff_3
AS SELECT staff_no, f_name, l_name, position, sex
FROM staff
WHERE branch_no = 'B003';

Memberikan Izin ke User lain

Untuk memberikan izin ke user database lain dapat dilakukan dengan menggunakan perintah 'GRANT'. Untuk perintah lengkapnya adalah sebagai berikut:
GRANT [PrivilegeList | ALL PRIVILEGES]
ON ObjectName
TO [AuthorizationIdList | PUBLIC]
[WITH GRANT OPTION]
PrivilegesList terdiri dari satu atau beberapa privileges dipisahkan dengan koma, diantaranya adalah:
SELECT
DELETE
INSERT [(columnName....)]
UPDATE [(columnName....)]
REFERENCES [(columnName....)]
USAGE
Contoh
GRANT ALL PRIVILEGES
ON staff
TO Manager WITH GRANT OPTION;
GRANT SELECT, UPDATE (salary)
ON staff
TO Personnel, Director;

Mengembalikan / Mengambil Izin kembali

Untuk mengambil izin kembali dari user lain dapat menggunakan perintah revoke. Perintah lengkapnya adalah sebagai berikut:
REVOKE [GRANT OPTION FOR] [PrivilegeList | ALL PRIVILEGES]
ON ObjectName
FROM {AuthorizationIdList | PUBLIC} [RESTRICT | CASCADE]
Contoh:
REVOKE SELECT
ON Branch
FROM PUBLIC;
REVOKE ALL PRIVILEGES
ON staff
FROM Director;

VIEW

Pengertian dari view

Sebuah view adalah sebuah table virtual yang tidak perlu ada di dalam basis data tapi bisa dihasilkan atas permintaan oleh user tertentu, pada saat waktu permintaan.

Keuntungan view

Keuntungan dari view adalah sebagai berikut:
  • View menyediakan mekanisme keamanan yang powerfull dan fleksibel dengan menyembunyikan bagian dari basis data dari user tertentu. 
  • View membolehkan user mengakses data dalam bentuk yang telah disesuaikan kebutuhan mereka, sehingga data yang sama dapat dilihat oleh user yang berbeda dalam bentuk yang lain, pada saat yang sama.
  • View dapat mempermudah operasi yang komplek pada dasar table.

Kerugian view

Kerugian view diantaranya adalah:
  • Pembatasan dalam update, dalam beberapa kasus.
  • Pembatasan dalam struktur, dalam beberapa kasus.
  • Pelanggaran performa, dalam beberapa kasus.

View memnyerupai query, tapi bedanya view dapat diolah datanya walaupun hanya berupa virtual data.

Membuat view di Oracle
  1. Pada Database Home Page, klik ikon Object Browser
  2. Object Browser muncul. 
  3. Tekan Create
  4. Dari daftar object types, pilih View
  5. Mendefiniskan view:
    - View Name – Masukkan nama untuk View.
    - Query – Mendefiniskan query untuk membuat view.
  6. Untuk mengakses Query Builder atau SQL Command Processor, tekan link yang cocok pada bagian bawah halaman. Tool yang dipilih akan muncul dalam pop-up window. Sekali Anda membuat SQL yang cocok, tekan Return untuk secara otomatis menutup pop-up window dan kembali ke wizard dengan SQL. 
  7. Klik Next
  8. Sebuah halaman konfirmasi akan muncul. Untuk melihat SQL, klik SQL
  9. Klik Create

Edit View

Ketika Anda mengedit sebuah view, Anda bisa mengedit kode secara manual, menampilkan sebuah pencarian dan penggantian, dan mengkompilasi view. Tambahan, Anda dapat menyimpan view sebagai sebuah file atau menghapusnya.

Edit View Secara Manual

Untuk mengedit view secara manual:
  • Pada Database Home Page, klik ikon Object Browser.
    Object Browser muncul. 
  • Dari Object list, pilih Views. 
  • Dari Object Selection pane, pilih sebuah view. 
  • Pilih tab Code. 
  • Klik Edit untuk mengaktifkan mode edit manual. 

Drop / Menghapus sebuah View

Untuk menghapus sebuah view:
  1. Pada Database Home Page, klik ikon Object Browser.
    Object Browser muncul. 
  2. Dari Object list, pilih Views. 
  3. Dari Object Selection pane, pilih sebuah view. 
  4. Pilih tab View atau tab Code. 
  5. Klik Drop untuk menghapus view yang dipilih. 

Membuat View menggunakan SQL

Untuk membuat view menggunakan SQL hampir sama dengan cara membuat sebuah table di SQL, hanya berbeda dalam sintaks saja. Sintaks untuk membuat view adalah sebagai berikut:
CREATE VIEW view_name (newColumnName)
AS subselect [WITH [CASCADE | LOCAL] CHECK OPTION]
Contoh:
CREATE VIEW Manager_3_Staff
AS SELECT *
FROM staff
WHERE branch_no = 'B003';
atau
CREATE VIEW staff_3
AS SELECT staff_no, f_name, l_name, position, sex
FROM staff
WHERE branch_no = 'B003';

Menghapus View menggunakan SQL

Untuk menghapus view mengunakan SQL, dapat menggunakan perintah berikut:
DROP VIEW view_name [RESTRICT | CASCADE]
Contoh:
  • DROP VIEW manager_3_staff;

Related Posts

DDL (Data Definition Language) Pada SQL Database
4/ 5
Oleh

Berlangganan

Suka dengan artikel di atas? Silakan berlangganan gratis via email