
Perkembangan zaman yang semakin pesat menuntut manusia untuk memikirkan berbagai cara dalam menyimpan dan merawat data-data mereka. Pada awalnya manusia menuliskannya di kertas, namun cara ini dianggap kurang efektif karena selain hasilnya tidak tahan lama (mudah rusak oleh waktu), juga sangat sulit untuk diproses ketika kita hendak mengolahnya.
Mungkin hal ini tidak terlalu bermasalah bagi data yang jumlahnya terbatas, tapi bila kita berhadapan dengan jumlah data yang sangat banyak, dan bisa dibilang tidak terbatas tentu akan sangat lama bila kita harus mengeceknya satu persatu secara manual. Bisa-bisa sampai lebaran monyetpun gak kelar-kelar!
Akhirnya mulai dipikirkanlah suatu cara untuk mengatasi hal tersebut. Dr. Edgar F.Codd pada tulisan ilmiahnya memperkenalkan prinsip-prinsip relational database yang kemudian dikenal dengan Relational Database Management System (RDBMS). Pada dasarnya RDBMS membagi data ke dalam beberapa tabel yang saling berhubungan.
Pada sesi ini kita akan mulai belajar bersama mebuat database sesuai konsep RDBMS. Adapun database yang akan kita buat adalah database rental CD. Temen-temen bisa memakai MS Access, MySQL, MS SQL Server, ataupun Oracle untuk mencoba contoh ini (tentu saja ada penyesuaian untuk masing-masing database tersebut). Adapun database yang dapid gunakan adalah Oracle 9.2. Hal paling mendasar yang harus kita pahami sebelum melangkah lebih lanjut adalah bahasa SQL.
Adapun konsep database yang kita bikin adalah seperti ini. Setiap petugas, anggota, dan koleksi rental CD (film) mempunyai kode sendiri-sendiri. Jadi kita bisa membedakan apabila ada seseorang yang mempunyai nama yang sama atau judul film yang sama. Setiap petugas nanti bisa melayani banyak anggota sehingga konsepnya menjadi 1 ke banyak. Adapun querynya nanti seperti dibawah ini.

Nah…sekarang mari kita coba membuat tabelnya satu persatu. Pertama-tama kita akan membuat tabel PETUGAS dengan fieldnya berisi kode_petugas, nama_petugas, dan alamat. Kode_petugas akan kita set menjadi primary key sehingga sintaks sql-nya sebagai berikut :
CREATE TABLE PETUGAS(
KODE_PETUGAS VARCHAR2(10) NOT NULL,
NAMA_PETUGAS VARCHAR2(50) NOT NULL,
ALAMAT VARCHAR2(50) NOT NULL,
TELEPON NUMBER(10) NULL,
CONSTRAINT PK_PETUGAS PRIMARY KEY(KODE_PETUGAS)
)
Untuk melihat hasil tabel yang telah kita buat, kita bisa memakai sintaks berikut ini:
SELECT * FROM PETUGAS

Nah…sekarang kita akan mulai menginput petugasnya satu-persatu. Sekedar contoh saja, kita akan mempunyai 5 orang petugas, yaitu Budi, Nia, Dewi, Agus, dan Lina. Adapun sintaksnya adalah sebagai berikut :
INSERT INTO PETUGAS VALUES(‘PT-01′,’BUDI’,'Jl. Gejayan No. XX’, 123456);
INSERT INTO PETUGAS VALUES(‘PT-02′,’NIA’,'Jl. Kaliurang Km 5′, NULL);
INSERT INTO PETUGAS VALUES(‘PT-03′,’DEWI’,'Jl. Wates Km 5′, 789456);
INSERT INTO PETUGAS VALUES(‘PT-04′,’AGUS’,'Jl. Wora-wari No. 15′, NULL);
INSERT INTO PETUGAS VALUES(‘PT-05′,’LINA’,'Kota Gede’, 147258);
Pada syntaks di atas, ada variable NULL pada field telepon, maksudnya adalah no telepon kedua petugas tersebut tidak diketahui. Null bukan berarti bernilai 0. Apabila kita gunakan statement select seperti di atas maka akan tampak hasilnya sebagai berikut :








