Arsitektur Rdbms Dan SQL
Arsitektur Rdbms Dan SQL
DAFTAR ISI........................................................................................................2
BAB I. ARSITEKTUR RELATIONAL DATABASE MANAGEMANT
(RDBMS)..........................................................................................................2
1.1. Mendefinisikan Istilah "Database"............................................................2
1.2. Database Management System..................................................................2
1.3. Relational Database Management System................................................3
1.4. Arsitektur RDBMS....................................................................................3
1.5. Elemen-Elemen RDBMS..........................................................................4
1.6. Konsep Relational DB...............................................................................5
1.7. Relational Databases dan SQL..................................................................6
BAB II. ARSITEKTUR SQL..............................................................................7
2.1. Sejarah......................................................................................................7
2.2. Stadardisasi...............................................................................................7
2.3. Perintah SQL............................................................................................8
2.4. Data Definition Language........................................................................9
2.5. Data Manipulation Language................................................................10
BAB III. TUGAS BASIS DATA LANJUT.........................................................14
3.1. Sintaks Tabel............................................................................................14
3.2. Data Tabel................................................................................................15
3.3. Merelasikan Tabel dengan Query.............................................................17
3.3. Membuat Diagram dengan Enterprise Manager......................................18
3.4. Penelusuran Data dengan Query pada Query Analyzer...........................19
3.5. Membuat VIEW dengan Enterprise Manager..........................................22
PENUTUP............................................................................................................24
DAFTAR PUSTAKA...........................................................................................25
1
BAB I
ARSITEKTUR RELATIONAL DATABASE MANAGEMANT (RDBMS)
2
Relational Database Management System (RDBMS) adalah sebuah
sistem yang secara otomatis menyatukan semua DBMS yang saling berhubungan.
RDBMS biasanya menggunakan 4th Genration Languange (4GL) dan sangat
fleksibel sehingga data dapat dimodifikasi dengan mudah, demikian pula dengan
struktur databasenya.
RDBMS tumbuh dari suatu teori yang pertama kali dikembangkan oleh
E.F Codd (IBM, 1969). Model relasi CODD ini digunakan untuk menciptakan
sebuah sistem secara formal sebagai media penyimpanan data yang memisahkan
representasi data secara internal dari aksses dan representasi / perwujudan
logikanya.
Kekuatan RDBMS terletak pada kemampuannya untuk
menyembunyikan detail dari penyimpanan data dari pengguna database dan cara
penggunaanya yang lebih mudah baik bagi pembangunan aplikasi / programmer,
maupun bagi pemakai akhir (end user). Hal ini didukung pula dengan penggunaan
Structured Query Languange (SQL) sebagi sumber dari semua RDBMS.
3
Constraints adalah aturan "build in" yang secara otomatis berpengaruh dalam
mempertahankan integritas database. Aturan-aturan integritas ini biasa dibuat atau
dirancang oleh seorang perancang database. Karakteristik penting lainnya dari
arsitektur RDBMS adalah adanya "Optimizer". Optimizer adalah sebuah sistem
pakar yang bertugas untuk menentukan cara pemrosesan yang paling efesien bagi
suatu database.
5
● Foreign keys
● Views
● Etc.
BAB II
ARSITEKTUR SQL
6
Structured Query Language. DDL dan DML (serta DCL). Standard
ANSI untuk bahasa query relational database. Non-procedural. Pengoptimasi
Query diperlukan untuk penerapan yang lebih efisien.
SQL (Structured Query Language) adalah sebuah bahasa yang
dipergunakan untuk mengakses data dalam basis data relasional. Bahasa ini secara
de facto merupakan bahasa standar yang digunakan dalam manajemen basis data
relasional. Saat ini hampir semua server basis data yang ada mendukung bahasa
ini untuk melakukan manajemen datanya.
2.1. Sejarah
Sejarah SQL dimulai dari artikel seorang peneliti dari IBM bernama EF
Codd yang membahas tentang ide pembuatan basis data relasional pada bulan Juni
1970. Artikel ini juga membahas kemungkinan pembuatan bahasa standar untuk
mengakses data dalam basis data tersebut. Bahasa tersebut kemudian diberi nama
SEQUEL (Structured English Query Language).
Setelah terbitnya artikel tersebut, IBM mengadakan proyek pembuatan
basis data relasional berbasis bahasa SEQUEL. Akan tetapi, karena permasalahan
hukum mengenai penamaan SEQUEL, IBM pun mengubahnya menjadi SQL.
Implementasi basis data relasional dikenal dengan System/R.
Di akhir tahun 1970-an, muncul perusahaan bernama Oracle yang
membuat server basis data populer yang bernama sama dengan nama
perusahaannya. Dengan naiknya kepopuleran Oracle, maka SQL juga ikut populer
sehingga saat ini menjadi standar de facto bahasa dalam manajemen basis data.
2.2. Standarisasi
Standarisasi SQL dimulai pada tahun 1986, ditandai dengan
dikeluarkannya standar SQL oleh ANSI. Standar ini sering disebut dengan
SQL86.Standar tersebut kemudian diperbaiki pada tahun 1989 kemudian
diperbaiki lagi pada tahun 1992. Versi terakhir dikenal dengan SQL92. Pada
tahun 1999 dikeluarkan standar baru yaitu SQL99 atau disebut juga SQL99, akan
tetapi kebanyakan implementasi mereferensi pada SQL92.
7
Saat ini sebenarnya tidak ada server basis data yang 100% mendukung
SQL92. Hal ini disebabkan masing-masing server memiliki dialek masing-
masing.
8
untuk membuat objek baru, USE untuk menggunakan objek, ALTER untuk
mengubah objek yang sudah ada, dan DROP untuk menghapus objek. DDL
biasanya digunakan oleh administrator basis data dalam pembuatan sebuah
aplikasi basis data.
CREATE
CREATE digunakan untuk membuat basis data maupun objek-objek basis
data. SQL yang umum digunakan adalah:
CREATE DATABASE nama_basis_data
CREATE DATABASE membuat sebuah basis data baru.
CREATE TABLE nama_tabel
CREATE TABLE membuat tabel baru pada basis data yang sedang
aktif.
dengan:
nama_field adalah nama kolom (field) yang akan dibuat. Beberapa sistem
manajemen basis data mengizinkan penggunaan spasi dan karakter nonhuruf pada
nama kolom.
9
tipe_data tergantung implementasi sistem manajemen basis data. Misalnya,
pada MySQL, tipe data dapat berupa VARCHAR, TEXT, BLOB, ENUM, dan
sebagainya.
constraints adalah batasan-batasan yang diberikan untuk tiap kolom. Ini juga
tergantung implementasi sistem manajemen basis data, misalnya NOT NULL,
UNIQUE, dan sebagainya. Ini dapat digunakan untuk mendefinisikan kunci
primer (primary key) dan kunci asing (foreign key).
Satu tabel boleh tidak memiliki kunci primer sama sekali, namun sangat
disarankan mendefinisikan paling tidak satu kolom sebagai kunci primer.
Contoh:
CREATE TABLE user
(
username VARCHAR(30) CONSTRAINT PRIMARY KEY,
passwd VARCHAR(20) NOT NULL,
tanggal_lahir DATETIME
);
akan membuat tabel user seperti berikut:
username passwd tanggal_lahir
SELECT
SELECT adalah perintah yang paling sering digunakan pada SQL, sehingga
terkadang istilah query dirujukkan pada perintah SELECT. SELECT
digunakan untuk menampilkan data dari satu atau lebih tabel, biasanya dalam
sebuah basis data yang sama. Secara umum, perintah SELECT memiliki
bentuk lengkap:
10
SELECT [nama_tabel|alias.]nama_field1 [AS alias1] [, nama_field2, ...]
FROM nama_tabel1 [AS alias1] [INNER|LEFT|RIGHT JOIN tabel2 ON
kondisi_penghubung]
[, nama_tabel3 [AS alias3], ...]
[WHERE kondisi]
[ORDER BY nama_field1 [ASC|DESC][, nama_field2 [ASC|DESC], ...]]
[GROUP BY nama_field1[, nama_field2, ...]]
[HAVING kondisi_aggregat]
dengan:
kondisi adalah syarat yang harus dipenuhi suatu data agar ditampilkan.
kondisi_aggregat adalah syarat khusus untuk fungsi aggregat.
Kondisi dapat dihubungkan dengan operator logika, misalnya AND, OR, dan
sebagainya.
Contoh:
Diasumsikan terdapat tabel user yang berisi data sebagai berikut.
username passwd tanggal_lahir jml_transaksi total_transaksi
Aris 6487AD5EF 09-09-1987 6 10.000
Budi 97AD4erD 01-01-1994 0 0
Charlie 548794654 06-12-1965 24 312.150
Daniel FLKH947HF 24-04-1980 3 0
Erik 94RER54 17-08-1945 34 50.000
Fungsi aggregat
Beberapa SMBD memiliki fungsi aggregat, yaitu fungsi-fungsi khusus yang
melibatkan sekelompok data (aggregat). Secara umum fungsi aggregat
adalah:
SUM untuk menghitung total nominal data
COUNT untuk menghitung jumlah kemunculan data
AVG untuk menghitung rata-rata sekelompok data
MAX dan MIN untuk mendapatkan nilai maksimum/minimum dari
sekelompok data.
Fungsi aggregat digunakan pada bagian SELECT. Syarat untuk fungsi
aggregat diletakkan pada bagian HAVING, bukan WHERE.
Subquery
Ada kalanya query dapat menjadi kompleks, terutama jika melibatkan lebih
dari satu tabel dan/atau fungsi aggregat. Beberapa SMBD mengizinkan
penggunaan subquery. Contoh:
Tampilkan username pengguna yang memiliki jumlah transaksi terbesar.
SELECT username
FROM user
WHERE jml_transaksi =
(
SELECT MAX(jml_transaksi)
12
FROM user
)
INSERT
Untuk menyimpan data dalam tabel dipergunakan sintaks:
INSERT INTO [NAMA_TABLE] ([DAFTAR_FIELD]) VALUES
([DAFTAR_NILAI])
Contoh:
INSERT INTO TEST (NAMA, ALAMAT, PASSWORD) VALUES ('test',
'alamat', 'pass');
UPDATE
Untuk mengubah data menggunakan sintaks:
UPDATE [NAMA_TABLE] SET [NAMA_KOLOM]=[NILAI] WHERE
[KONDISI]
Contoh:
UPDATE Msuser set password="123456" where username="abc"
DELETE
Untuk menghapus data dipergunakan sintaks:
DELETE FROM [NAMA_TABLE] [KONDISI]
Contoh:
DELETE FROM TEST WHERE NAMA='test';
BAB III
TUGAS BASIS DATA LANJUT
13
3.1. Dari Diagram yang tampak pada gambar diatas, sintaks table sebagai
berikut :
a. Table Dosen :
Create Table Dosen
(
Nid char(5) Primary Key,
Nama_d varchar(50),
Tempat_lhr varchar(25),
Tgl_lhr datetime,
JKelamin varchar(15),
Alamat varchar(78),
Kota varchar(20),
Kodepos char(5),
Gajipokok money
)
b. Table Matakuliah :
c. Table Jurusan :
Create Table Jurusan
(
Kode_jur char(2) not null,
Nama_jur varchar(50),
Jenjang varchar(15),
Nama_kajur varchar(30)
)
Alter Table Jurusan
Add Constraint PKJur Primary Key(Kode_jur)
d. Table Mengajar :
Create Table Mengajar
(
Nid char(5),
Thn_akademik char(4),
Smt char(2),
Hari varchar(10),
14
Jam_ke char(2),
Kdmk char(9),
Waktu varchar (10),
Kelas varchar(5),
Kode_jur char(2),
Constraint PKAjar Primary Key (nid,Thn_akademik,smt,hari,jam_ke)
)
3.2. Data – data dari masing – masing Table diatas sebagai berikut :
a. Data Dosen
b. Data Mahasiswa
15
c. Data Jurusan
d. Data Mengajar
16
3.3. Merelasikan Table dengan Query Analyzer
17
1. Klik Diagram pada Database Penjadwalan_Mengajar_Dosen, lalu klik Kanan,
lalu Klik New Database Diagram, Lalu Next, maka akan tampak gambar
berikut ini :
2. Pilih semua table yang akan dibuat tablenya (Add), setelah itu Klik Next, lalu
Finish dan Oke, maka akan tampak Diagram seperti gambar berikut, lalu
simpan diagram tersebut.
18
1. Menampilkan seluruh kolom / field pada table Dosen, Matakuliah, Jurusan,
Mengajar :
select * from Dosen
Select * From Matakuliah
Select * From Jurusan
Select * From Mengajar
3. Menampilkan data pada kolom tertentu dan dengan criteria tertentu (1 table)
19
4. Menampilkan data pada kolom tertentu dan dengan criteria tertentu (lebih 1
table)
20
3.5. Membuat VIEW dengan Enterprise Manager
1. Klik View pada Database Penjadwalan_Mengajar_Dosen, lalu klik Kanan, lalu
Klik View, Lalu klik New View, maka akan tampak gambar berikut ini :
21
2. Pada kalimat : New View, klik Kanan, lalu Add Table, lalu Add table – table
yang akan dibuat Viewnya (missal 4 table), lalu Close, seperti gambar berikut :
3. Lalu pilih kolom-2 / field-2 yang akan dibuat view nya dengan kriteria yang
diinginkan, seperti gambar berikut :
22
PENUTUP
23
"RDBMS/DBMS" menggunakan "SQL" untuk mengakses data-datanya,
walaupun "SQL" di tiap "RDBMS/DBMS" beda satu sama lain.
RDBMS adalah Relational Database Management System (RDBMS)
yang didistribusikan secara gratis dibawah lisensi GPL (General Public License).
Dimana setiap orang bebas untuk menggunakan RDBMS, namun tidak boleh
dijadikan produk turunan yang bersifat komersial.
DB2 adalah produk Sistem Manajemen Hubungan Database dari IBM
atau sekarang yang populer disebut Data Server yang dimana merupakan
Perangkat Lunak Manajemen Informasi.
Basis data Oracle adalah basis data relasional yang terdiri dari kumpulan
data dalam suatu sistem manajemen basis data RDBMS. Perusahaan perangkat
lunak Oracle memasarkan jenis basis data ini untuk bermacam-macam aplikasi
yang bisa berjalan pada banyak jenis dan merk perangkat keras komputer
(platform).
Microsoft SQL Server adalah sebuah sistem manajemen basis data
relasional (RDBMS) produk Microsoft. Bahasa kueri utamanya adalah Transact-
SQL yang merupakan implementasi dari SQL standar ANSI/ISO yang digunakan
oleh Microsoft dan Sybase.
MySQL adalah sebuah perangkat lunak sistem manajemen basis data
SQL (bahasa Inggris: database management system) atau DBMS yang
multithread, multi-user, dengan sekitar 6 juta instalasi di seluruh dunia.
DAFTAR PUSTAKA
[1]http://www.ittutor.net/forums/index.php?showtopic=4224
24
[2]http://andrianto.mywapblog.com/post/2.xhtml
[3]http://www.google.co.id/url?
sa=t&source=web&ct=res&cd=3&ved=0CA0QFjAC&url=http%3A%2F
%2Ffikri.staff.gunadarma.ac.id%2FDownloads%2Ffiles
%2F11919%2FPengantarSQL2.pdf&rct=j&q=PENJELASAN+ARSITEKT
UR+SQL&ei=yEqbS_WbC8OyrAezx4WEAw&usg=AFQjCNGoVyU50M
mSpQwLuGrUUdz4A1sMGg
25