Wanna $10??? klik & register now!!!

Sabtu, 17 April 2010

ISTILAH SISTEM BASIS DATA DALAM TABEL RELASIONAL

SEJARAH SINGKAT MODEL RELASIONAL

Model relasional pertama kali diperkenalkan oleh E.F. Codd pada tahun 1970. Objektifitas dari model relasional ini adalah konsep kemandirian data, relasi yang normal tanpa adanya kelompok pengulangan serta perluasan dari bahasa manipulasi data yang berorientasi pada himpunan data.

Prototype sistem manajemen basis data relasional, dengan nama System R, dibuat oleh IBM’s San Jose Research Laboratory di California pada tahun 1970-an. Kemudian mulai dikembangkan bahasa queri terstruktur yang diberi nama Structured Query Language (SQL) dan dinyatakan sebagai standar bahasa relasional. Selama tahun 1980-an bermunculan produk-produk sistem manajemen basis data relasional yang komersial; contohnya DB2 dan SQL/DS dari IBM serta ORACLE dari ORACLE Corporation.

Pada waktu bersamaan, dikembangkan prototype INGRES (Interactive Graphics Retrieval System) dimana fokusnya hampir sama dengan System R di California University, Berkeley. Produk komersial dari INGRES dikeluarkan oleh Relational Technology Inc. serta Intelligence Database Machine dari Britton Lee Inc.

Sekarang telah terdapat bermacam-macam produk komersial dari model relasional untuk mikrokomputer maupun mainframe. Seperti misalnya, Paradox dan dBase IV dari Borland, Access dari Microsoft, FoxPro dan R:Base dari Microrim.

APAKAH DATABASE RELASIONAL ITU??

Model relasional berdasarkan teori himpunan matematik. Struktur didefinisikan dengan Tabel. Dalam istilah matematika, tabel disebut sebagai Relasi. Profesional sistem sering menggunakan istilah “tabel” dan “relasi” secara bergantian. Tiap tabel dalam model relasional dikomposisikan dari baris dan kolom. Kolom disebut Atribut. Nilai untuk sebuah atribut harus dipilih dari sekelompok nilai yang dinamakan Domain. Karena banyak kolom dalam tabel yang sama dapat diidentifikasikan atas domain yang sama, maka nama atribut didefinisikan untuk tiap kolom. Tiap nama atribut dalam sebuah relasi harus unik. Urutan kiri ke kanan dari kolom tidak penting. Urutan dari baris juga tidak penting. Perpotongan dari suatu baris dan kolom berisi sebuah nilai tunggal.
Sifat-sifat Tabel :

1. Duplikasi baris tidak diperbolehkan. Untuk melaksanakan sifat ini, harus terdapat paling sedikit satu atribut atau kombinasi beberapa atribut yang mengidentifikasi secara unik tiap baris dari tabel. Atribut atau kombinasi beberapa atribut yang melaksanakan tugas ini disebut Kunci Primer (Primary key). Contoh : Nomor_Mahasiswa, adalah kunci primer yang mengidentifikasi tiap mahasiswa secara unik.
2. Database relasional adalah nilai Primary Key tidak boleh mempunyai duplikat atau NIL (NULL, yaitu nilai tidak diketahui).
3. Keterhubungan (relationship) antara dua tabel. Jika Tabel R2 mempunyai sebuah Kunci Asing (Foreign Key) yang cocok dengan kunci primer dari Tabel R1, maka untuk setiap nilai Foreign Key harus terdapat sebuah nilai kecocokan dari Primery Key, atau nilai Foreign Key harus nil.

ISTILAH DALAM SISTEM BASIS DATA RELASIONAL

1.Relasi
Relation (Relasi) merupakan sebuah tabel dengan kolom-kolom dan baris-baris. Pada model relasional, relasi digunakan untuk menyimpan informasi mengenai objek-objek yang direpresentasikan dalam sebuah basis data. Relasi ini digambarkan dalam bentuk tabel dua dimensi. Contohnya mengenai informasi pegawai-pegawai yang bekerja di perusahaan X direpresentasikan pada relasi PEGAWAI yang mengandung informasi nomor induk pegawai, nama, alamat, gaji dan kode divisi tempat pegawai bekerja.

2.Atribut
Attribute (Atribut) merupakan kolom dari suatu relasi yang mempunyai nama. Atribut-atribut pada suatu relasi tidak harus tersusun secara khusus. Contohnya, pada relasi PEGAWAI mempunyai lima kolom untuk atribut-atribut NIP#, Nama, Alamat, Gaji dan KodeDiv.

3.Tuple (Tupel)
Tuple (Tupel) merupakan suatu baris dari suatu relasi. Pada relasi PEGAWAI, setiap tupel mempunyai 5 nilai, masing-masing untuk setiap atribut NIP#, Nama, Alamat, Gaji dan KodeDiv.

4.Domain
Domain (Domain) merupakan kumpulan nilai-nilai data yang mungkin untuk suatu atribut dan bersifat atomik. Contoh : domain dari atribut KodeDiv adalah {Div01, Div02, Div03, Div04}

5.Degree of Relation (Derajat suatu relasi)
Degree of relation (Derajat dari suatu relasi) adalah banyaknya atribut pada suatu relasi. Relasi PEGAWAI yang mempunyai 5 atribut berarti mempunyai derajat lima, dimana setiap tupelnya mempunyai 5 nilai. Relasi dengan satu atribut disebut derajat unary, dua atribut disebut binary, tiga atribut disebut ternary, selanjutnya disebut n-ary.

6.Cardinality of Relation (Kardinalitas suatu relasi)
Cardinality of relation (Kardinalitas dari suatu relasi) adalah banyaknya tuple pada suatu relasi. Kardinalitas dari relasi ini dapat berubah-ubah sesuai dengan perubahan yang terjadi pada relasi.

Contoh dalam bentuk gambar :
















Karakteristik Suatu Relasi

1. Setiap relasi mempunyai nama yang harus berbeda dengan relasi lainnya.
2. Setiap sel dari relasi mempunyai hanya satu nilai atau atomik.
3. Setiap atribut mempunyai nama yang berbeda.
4. Nilai atribut bersifat atomik dan berasal dari domain yang sama.
5. Atribut-atribut tidak harus tersusun secara khusus.
6. Setiap tupel berbeda dan tidak ada tupel yang rangkap.
7. Tupel tidak harus tersusun secara khusus. (secara teroritis)

Sabtu, 10 April 2010

Alternate dan Candidate key








Candidate key

Atribut di dalam relasi yang biasanya mempunyai nilai unik (super key dengan jumlah field yang paling sedikit)

Maka, candidate key-nya adalah NPM, NAMA dan ALAMAT (karena hanya terdiri dari 1 field saja)

Alternate key

Candidate key yang tidak dipilih sebagai primary key

Maka, candidate key-nya NAMA dan ALAMAT

Jumat, 09 April 2010

TUGAS SISTEM BASIS DATA

TUJUAN
  1. Mengerti yang dimaksud dengan Sistem Basis Data dan komponen-komponennya
  2. Mengetahui abstraksi data yang menunjukkan bagaimana para pemakai melihat data
  3. Mengetahui bahasa basis data yang menjadi perantara user untuk berinteraksi dengan basis data
  4. Mengetahui struktur sistem basis data secara keseluruhan

PENGERTIAN

Merupakan sistem yang terdiri atas kumpulan file (table) dalam sebuah basis data di sebuah sistem komputer yang saling berhubungan dan sekumpulan program pengelola basis data (DBMS :Database Management System) yang memungkinkan beberapa pemakai dan atau program lain untuk mangakses dan memanipulasi file-file (table-table) tersebut

BAHASA BASIS DATA

  1. Terdiri dari sejumlah perintah (statement) yang diformulasikan dan dapat diberikan oleh pengguna dan dikenali/diproses oleh DBMS untuk melakukan suatu aksi/pekerjaan tertentu.
  2. Komponen Bahasa Basis Data: Data Definition Language (DDL) & Data Manipulation Language (DML)

DATA DEFENITION LANGUAGE

Data Definition Language (DDL) adalah bahasa dalam DBMS yang digunakan untuk membuat atau mendefinisikan obyek-obyek di dalam database. Secara umum digunakan untuk membuat obyek table dan view. Secara khusus, di dalam DBMS tertentu digunakan untuk :

1. Membuat trigger

2. Membuat stored procedure

3. Membuat database, index, rule, schema dll (tergantung DBMS)

4. Digunakan untuk mespesifikasikan struktur/skema basis data yang menggambarkan/mewakili desain basis data secara keseluruhan.

5. Hasil kompilasi perintah DDL adalah kamus data >>File yang berisi metadata (data yang mendeskripsikan data sesungguhnya)

6. Struktur penyimpan dan metode akses yang digunakan oleh sistem basis data disebut dengan data storage and definition language

Contoh sintaks DDL :

Untuk Tabel:

1. Untuk Membuat Tabel

CREATE TABLE (
|
)

2. Untuk menghapus table

DROP TABLE

Untuk Memodifikasi Tabel:

3. Untuk menambahkan kolom baru

ALTER TABLE
ADD

4. Untuk menghapus kolom

ALTER TABLE
DROP

Untuk View:

5. Untuk membuat view

CREATE VIEW AS

6. Untuk menghapus view

DROP VIEW

Untuk Trigger:

7. Untuk membuat trigger

CREATE TRIGGER ON TABLE ON [DELETE] [,] [INSERT] [,] [UPDATE] AS

Contoh Objek Basis Data yang termasuk DDL:

Tabel

Tabel terdiri dari field-field atau kolom-kolom dengan tipe data tertentu dan baris-baris yang digunakan sebagai penyimpan data.

Contoh : tabel Mahasiswa yang terdiri dari field-field : NRP (primary key), Nama, Alamat, JenisKel, NIPDosen (foreign key dari field NIP pada tabel Dosen).

Sintaks DDLnya :

CREATE TABLE Mahasiswa (
NRP char(8),
Nama varchar(20) NOT NULL,
Alamat varchar(30),
JenisKel char(1) DEFAULT “L”,
NIPDosen char(9),
PRIMARY KEY (NRP),
CONSTRAINT fk_mhs_dosen FOREIGN KEY (NIPDosen) REFERENCES Dosen(NIP) ON DELETE RESTRICT ON UPDATE CASCADE ON INSERT RESTRICT
);

View

View adalah tabel bayangan. Tidak menyimpan data secara fisik. Biasanya berupa hasil query dari tabel-tabel dalam sebuah database.

Contoh : view MahasiswaPria yang diambil dari tabel Mahasiswa di mana field JenisKel = “L”.

Sintaks DDLnya :

CREATE VIEW MahasiswaPria AS
SELECT * FROM Mahasiswa WHERE JenisKel = “L”

Trigger

Trigger adalah sebuah obyek dalam database yang berupa prosedur yang merespon setiap kali terdapat proses modifikasi (insert, update, dan delete) pada tabel.

Contoh : trigger tLogUbahNilai melakukan penambahan data pada tabel LogHistoris untuk setiap penambahan / update data pada tabel PesertaKul.

Sintaks DDLnya :

CREATE TRIGGER tLogUbahNilai ON TABLE PesertaKul
FOR UPDATE, INSERT AS
INSERT INTO LogHistoris (Tanggal, Proses) VALUES (getdate(), ‘Terjadi proses perubahan data nilai’)

Dengan menggunakan sintaks SQL, buatlah DDL untuk rancangan berikut ini :



Keterangan :

· Emp_name dan dep_name tidak boleh dikosongi

· Isi default emp_name = pegawai baru

· Isi default emp_address = surabaya

create table DEP (
DEP_ID CHAR(6) not null,
DEP_NAME VARCHAR2(20),
constraint PK_DEP primary key (DEP_ID)
);

create table EMP (
EMP_ID CHAR(8) not null,
DEP_ID CHAR(6),
EMP_NAME VARCHAR2(25) default ‘pegawai_baru’,
EMP_ADDRESS VARCHAR2(35) default ’surabaya’,
constraint PK_EMP primary key (EMP_ID),
constraint FK_EMP_WORK_AT_DEP foreign key (DEP_ID) references DEP (DEP_ID)
);

DATA MANIPULATION LANGUAGE

1. Data Manipulation Language (DML) merupakan bahasa basis data yang berguna untuk melakukan modifikasi dan pengambilan data pada suatu basis data.

2. Bentuk manipulasi:

-Pencarian kembali data lama

-Penyisipan data baru

-Penghapusan data

-Pengubahan data

3. Jenis DML:

-Prosedural

-Non Prosedural

Contoh penggunaan Data Manipulation Language:

a. Penambahan Data

Instruksi SQL untuk melakukan penambahan data adalah menggunakan syntax:

INSERT INTO [(field1, field2, …)]

VALUES (field1 [,field2, …]) | SQL-SELECT

Keterangan

· à nama tabel yang akan ditambahkan datanya

· [(field1, field2, …)] àfield-field di dalam tabel yang akan diisikan nilainya

· VALUES (nilai1 [,nilai2, …]) | SQL-SELECT à nilai yang diisikan

Jika mengisikan sebuah data tunggal saja yang tidak diambil dari tabel lain, gunakan:

VALUES (nilai1 [,nilai2, …])

Contoh :

Untuk mengisikan data pada tabel penerbit:

INSERT INTO penerbit (PN_ID, PN_Nama) ¿

VALUES (91, 'CV Angkasa')

Contoh di atas menyebutkan field-field yang diisikan pada tabel penerbit, sehingga nilai-nilai yang ditulis setelah klausa VALUES juga harus mengikuti field-field tersebut.

b. Mengubah Data

Instruksi SQL untuk melakukan perubahan data adalah menggunakan syntax:

UPDATE

SET = [ , = , …]

[WHERE ]

Keterangan

· à nama tabel yang akan ditambahkan datanya

· SET = [,=,... ] à nilai baru yang akan diisikan pada field tertentu

· [WHERE ] à filter yang berlaku untuk menentukan data mana saja yang diupdate

Contoh :

n Untuk melakukan update massal (berlaku untuk seluruh field), yakni menaikkan seluruh harga sebesar 110% pada koleksi:

UPDATE koleksi SET KL_Harga=KL_Harga*1.1

c. Menghapus Data

Instruksi SQL untuk menghapus data adalah menggunakan syntax:

DELETE FROM

[WHERE ]

Keterangan

· namaTabel> à nama tabel yang akan ditambahkan datanya

· [WHERE ] à filter yang berlaku untuk menentukan data mana saja yang dihapus

Contoh :

n Untuk menghapus seluruh data peminjaman:

DELETE FROM Peminjaman

d. Contoh Tabel

Contoh Data:

Tabel Mahasiswa:



Tabel Dosen: