Sie sind auf Seite 1von 50

4

BAB II
LANDASAN TEORI

2.1 Konsep Database
Beberapa definisi tentang Database :
1. Menurut Gordon C. Everest :
Database adalah koleksi atau kumpulan data yang mekanis,
terbagi/shared, terdefinisi secara formal dan dikontrol terpusat pada
organisasi.
2. Menurut C.J. Date :
Database adalah koleksi data operasional yang tersimpan dan dipakai
oleh sistem aplikasi dari suatu organisasi.
a. Data input adalah data yang masuk dari luar system.
b. Data output adalah data yang dihasilkan sistem.
c. Data operasional adalah data yang tersimpan pada system.
3. Menurut Toni Fabbri :
Database adalah sebuah sistem file-file yang terintegrasi yang mempunyai
minimal primary key untuk pengulangan data.
4. Menurut S. Attre :
Database adalah koleksi data-data yang saling berhubungan mengenai
suatu organisasi / enterprise dengan macam-macam pemakaiannya.

Jadi Database System adalah sistem penyimpanan data memakai
komputer. Sifat-sifat database:
a. Internal : Kesatuan (integritas) dari file-file yang terlibat.
b. Terbagi/share : Elemen-elemen database dapat dibagikan pada para
user baik secara sendiri-sendiri maupun secara serentak dan pada
waktu yang sama (concurrent sharing).



5

Elemen-elemen database:
a. Tipe :
1. Enterprise = Suatu jenis organisasi, misalnya Bank, Hotel,
Universitas dan lain-lain.
2. Entity = File = Obyek pada enterprise berdasarkan data yang
disimpan.
3. Atribute = Field = Data item = Beberapa hal yang ingin diketahui
dari suatu file.
4. Record = Satu set field yang merupakan ciri khas dari suatu file.

Istilah entity dan atribute biasanya digunakan pada tingkat konseptual dan
logikal, sedangkan file, record dan field pada tingkat internal/fisikal.
Hubungan: Enterprise terdiri dari beberapa entity, entity terdiri dari
beberapa record dan record terdiri dari beberapa field.


EnterpriseEntity / FileRecordAtribute/Field

b. Isi / Nilai :
1. Data File : Seluruh isi data pada file.
2. Data Record : Satu set isi data pada suatu susunan field dari suatu
file.
3. Data Value : Isi data masing-masing data elemen.
Sumber-sumber daya suatu organisasi / enterprise ada 5 M sumber
daya, yaitu:
a. Man : Manajemen Personalia (Manusia).
b. Machine : Manajemen peralatan (Mesin).
c. Material : Manajemen industri (Bahan Baku).
d. Money : Manajemen Keuangan (Uang).
e. Message : Manajemen Informasi.

Gambar 2.1.1 Hubungan Enterprise
6

DATA merupakan sumber daya yang paling penting dalam
perusahaan, data perlu disimpan dan dimanajemen (rencana, desain,
operasi, kontrol dan evaluasi). Proses manajemen dilaksanakan dalam
siklus hidup (Life Cycle).
Manajemen data dapat dilakukan secara administrasi manual atau
dengan memakai komputer, secara umum Sistem Database adalah
sistem penyimpanan data memakai komputer. Ada 4 Komponen DATA
PROCESSI NG yang menggunakan Sistem Database:
1. Perangkat Keras (Hardware): Penyimpanan Sekunder
2. Perangkat Lunak (Software) : Program Aplikasi, DBMS
3. Data : Database mempunyai sifat internal (integritas dari file-file
yang terlibat) dan terbagi / share
4. User : User pembuat program aplikasi, end user (user pemakai
data langsung), DBA (Penanggung jawab).
Penanggung-jawab sistem database adalah DBA (Database
Administrator) :
1. Syarat menjadi DBA:
a. Berkeahlian teknik.
b. Berkeahlian tentang enterprise.
2. DBA yaitu orang / group yang bertanggungjawab pada seluruh
pengontrolan database
3. Tanggung jawab DBA:
a. Menetapkan isi database.
b. Menetapkan struktur data pada penyimpanan sekunder dan
metode akses.
c. Melayani kebutuhan user.
d. Mendefinisikan pengecekan kewenangan penggunaan
database oleh user dan menetapkan prosedur validasi suatu
database.
e. Menetapkan strategi backup dan recovery.
7

f. Memonitor unjuk kerja dan melayani kebutuhan akan
perubahan-perubahan kepentingan.
4. Untuk melaksanakan tanggungjawabnya DBA harus mempunyai
beberapa program utility, misalnya:
a. Create Routine: Untuk membuat database baru
b. Reorganization Routine: Untuk menyusun kembali database
(misal : untuk menghapus tempat-tempat kosong dari record-
record yang sudah tidak berlaku)
c. Journalizing / Logging Routine: Untuk mencatat semua operasi
yang telah dikerjakan, siapa user-nya.
d. Recovery Routine: Memperbaiki kerusakan database pada posisi
sebelum kerusakan.
e. Statistical Analisys Routine: Untuk memonitor hasil-hasil
database.
Salah satu alat penting DBA adalah Data Dictionary yaitu segala
sesuatu kekurangan tentang elemen-elemen database misal: Data apa
saja yang dipakai suatu program aplikasi, data apa yang dibutuhkan
untuk suatu laporan dari suatu departemen.
Kedudukan DBA:








8

2.1.1 DBMS (Database Managemen System)
1. Menutut C.J. Date: DBMS adalah merupakan software yang
mengontrol seluruh akses pada database untuk melayani
kebutuhan user.
2. Menurut S, Attre: DBMS adalah software, hardware, firmware
dan procedure-procedure yang memanage database. Firmware
adalah software yang telah menjadi modul yang tertanam pada
hardware (ROM).
3. Menurut Gordon C. Everest: DBMS adalah manajemen yang
efektif untuk mengorganisasi sumber daya data.
Jadi DBMS: Semua peralatan komputer (Hardware + Software
+ Firmware). DBMS dilengkapi dengan bahasa yang berorientasi
pada data (High level data langauage) yang sering disebut juga
sebagai bahasa generasi ke 4 (fourth generation language).
Fungsi DBMS:
a. Definisi data dan hubungannya
b. Memanipulasi data
c. Keamanan dan integritas data
d. Security dan integritas data
e. Recovery/perbaikan dan concurency data
f. Data dictionary
g. Unjuk kerja / performance
Peralatan untuk menetapkan/menentukan pendekatan database
disebut DBMS. DBMS merupakan software (dan hardware) yang
kusus didesain untuk melindungi dan memanage database. Dengan
menggunakan DBMS, maka dapat:
a. Mendefinisikan data dan hubungannya.
b. Mendokumentasikan struktur dan definisi data.
c. Menggambarkan, mengorganisasikan dan menyimpan data
untuk akses yang selektif/dipilih dan efisien.
9

d. Hubungan yang sesuai antara user dengan sumber daya data.
e. Perlindungan terhadap sumber daya data akan terjamin, dapat
diandalkan, konsisten dan benar.
f. Memisahkan masalah logical dan physical sehingga merubah
implementasi database secara fisik tidak menghendaki user
untuk merubah maksud data (logical).
g. Menentukan pembagian data kepada para user untuk mengakses
secara concurent pada sumber daya data.
Contoh DBMS:
1. Database Hierarchy: Pengaksesan data harus mengikuti aturan
hierarchy yang sudah didefinisikan terlebih dahulu.
Contoh: IMS-2 (Information Management System) oleh IBM,
1968
2. Data Network: Data membentuk jaringan yang lebih bebas dari
model hierarchy.
Contoh: IDMS (Integrated Database Management System) oleh
Cullinett Software Inc, 1972
3. Data Relational: Data dikelompokkan secara bebas menurut
jenisnya lewat proses normalisasi
Contoh:
a. INGRES oleh UN of CA & Relational Tech., 1973
b. System-R oleh IBM Research, 1975
c. ORACLE oleh Relational Software Inc. , 1979
d. DBASE II oleh Ashton-Tate, 1981
e.
2.1.2 Pendekatan Traditional VS Database
Mengapa memilih pendekatan database karena pendekatan
pemrosesan data sebelum pendekatan database adalah terpusat pada
program aplikasi.
10

Pendekatan traditional, berorientasi pada program aplikasi dan
tiap-tiap aplikasi berdiri sendiri-sendiri. contoh: aplikasi produk,
aplikasi inventory dsb. Sehingga terdapat masalah-masalah:
a. Data redundancy: Duplikasi data yang sama pada beberapa
file. Redundansi dapat direduksi/dikurangi tetapi tidak dapat
dihilangkan sama sekali sehingga akan menyebabkan
inconsistency (data tidak konsisten), incosistency dapat
dihilangkan dengan cara Propagating Update yaitu melakukan
update secara serentak pada field-field yang redundansi.
Contoh: Jika pelanggan pindah alamat dan nomer telponnya
maka seharusnya ketiga file yang memuat data tersebut harus
diubah / update (contoh file Anggota, file transaksi
peminjaman, file Pengembalian), bila salah satu saja dari file
yang mengandung data tersebut terlewat di-update maka
terjadilah tidak konsisten tadi. Untuk itu perlu adanya
propagating update ketiga file tersebut.
b. Data Isolation: Datanya terisolasi bagi user dan untuk
melihatnya harus membuka program terlebih dahulu.
c. Ketidakmampuannya dalam menjawab kebutuhan/pertanyaan
sewaktu-waktu.
d. Ketidakmampuan dalan sharing data yaitu elemen-elemen
database dapat dibagikan pada para user baik secara sendiri-
sendiri maupun serentak dan pada waktu yang sama.
e. Biaya pengembangan yang tinggi sehingga tidak responsif
terhadap kebutuhan perubahan.



Gambar 2.1.3 Pendekatan Traditional
11

Pendekatan Database, berarti data bebas dari program aplikasi
(Data independent).
a. Kemarin : Melakukan Desain
b. Hari ini : Dioperasikan
c. Yang akan datang : Dikembangkan




Keuntungannya:
a. Mengurangi data redundancy: Data redundansi dapat
direduksi/dikurangi, tetapi tidak dapat dihilangkan sama sekali
(untuk kepentingan keyfield)
b. Data integrity: Integritas/kesatuan data dapat dipertahankan, hal
ini sebagi akibat dari penghindaran inconsistency dan
pengontrolan security.
c. Data independent: Kebebasan data, contoh Jika terdapat
perubahan struktur file pelanggan maka program tersebut
haruslah diubah. Jadi bahwa program yang telah dibuat tidak
bebas terhadap database yang ada, apapun yang terjadi pada
struktur file, setiapkali hendak melihat data dengan utility List,
dll. ini berarti perintah-perintah dalam paket DBMS bebas
terhadap database.
d. Data security: Kontrol sekuriti dapat dilakukan. DBA dapat
mengatur kewenganan penggunaan database (update, retrieve,
delete).
e. Data consistency: Inconsistency dapat dihilangkan
f. Mudah dalam penggunaan datanya.
Gambar 2.1.4 Pendekatan Database
12

g. Membutuhkan sedikit memory untuk penyimpanan data.
Kerugiannya:
Mahal (teknologi DBMS, Operation, Conversion, Planning, Risk)

2.2 Teori Desain Database
2.2.1 Diagram Konteks
Diagram konteks merupakan kejadian tersendiri dari suatu
diagram alir data. Dimana satu lingkaran mempresentasikan seluruh
sistem. Diagram konteks ini harus berupa suatu pandangan yang
mencakup masukan-masukan dasar, sistem-sistem, dan keluaran.
Diagram konteks ini merupakan tingkatan tertinggi dalam
diagram aliran data dan hanya memuat satu proses, menunjukkan
sistem secara keseluruhan. Proses tersebut diberi nomor nol. Semua
entitas eksternal yang ditunjukkan pada diagram konteks berikut
aliran data-aliran data utama menuju dan dari sistem. Diagram
tersebut tidak memuat penyimpanan data dan tampak sederhana
untuk diciptakan, begitu entitas-entitas eksternal serta aliran data-
aliran data menuju dan dari sistem diketahui penganalisis dari
wawancara dengan user dan sebagai hasil analisis dokumen.
Diagram konteks menggaris bawahi sejumlah karakteristik penting
dari suatu sistem:
a. Kelompok pemakai, organisasi atau sistem lain dimana sistem
kita melakukan komunikasi yang disebut juga sebagai
terminator.
b. Data, dimana sistem kita menerima dari lingkungan dan harus
diproses dengan cara tertentu.
c. Data yang dihasilkan sistem kita dan diberikan ke dunia luar.
d. Penyimpanan data yang digunakan secara bersama antara sistem
kita dengan terminator. Data ini dibuat oleh sistem dan
digunakan oleh lingkungan atau sebaliknya dibuat oleh
lingkungan dan digunakan oleh sistem kita.
13

e. Batasan antara sistem kita dan lingkungan.
Diagram konteks dimulai dengan penggambaran terminator,
aliran data, aliran control penyimpanan, dan proses tunggal yang
menunjukkan keseluruhan sistem. Bagian termudah adalah
menetapkan proses (yang hanya terdiri dari satu lingkaran) dan
diberi nama yang mewakili sistem. Nama dalam hal ini dapat
menjelaskan proses atau pekerjaan atau dalam kasus ekstrim berupa
nama perusahaan yang dalam hal ini mewakili proses yang dilakukan
keseluruhan organisasi.
Terminator ditunjukkan dalam bentuk persegi panjang dan
berkomunikasi langsung dengan sistem melalui aliran data atau
penyimpanan eksternal. Antar terminator tidak diperbolehkan
komunikasi langsung. Pada kenyataannya hubungan antar terminator
dilakukan, tetapi secara definitive karena terminator adalah bagian
dari lingkungan, maka tidak relevan jika dibahas dalam konteks
diagram.
Tabel 2.2.1 Simbol-simbol Diagram Konteks


No Simbol Keterangan

1.

Terminator

2.

Aliran Data/Data
flow

3.

Atau
Proses
14

Diagram konteks memiliki aturan sebagai berikut:
a. Jika terdapat banyak terminator yang mempunyai banyak
masukan dan keluaran diperbolehkan untuk digambarkan lebih
dari satu kali sehingga mencegah penggambaran yang terlalu
rumit, dengan ditandai secara khusus untuk menjelaskan bahwa
terminator yang dimaksud adalah identik. Tanda tersebut dapat
berupa asterisk (*) atau pagar (#).
b. Jika terminator mewakili individu sebaiknya diwakili oleh peran
yang dimainkan personil tersebut. Alasan pertama adalah
personil yang berfungsi untuk melakukan itu dapat berganti
sedang diagram konteks harus tetap akurat walaupun personil
berganti. Alasan kedua adalah seorang personil dapat
memainkan lebih dari satu peran.
c. Karena focus utama adalah mengembangkan model, maka
penting untuk membedakan sumber (resource) dan pelaku
(handler). Pelaku adalah mekanisme, perangkat, atau media
fisik yang mentransportasikan data ke/dari sistem, karena pelaku
seringkali familier dengan pemakai dalam implementasi sistem
berjalan, maka sering menonjol sebagai sesuatu yang harus
digambarkan lebih dari sumber data itu sendiri. Sedangkan
sistem baru dengan konsep pengembangan teknologinya
membuat pelaku menjadi sesuatu yang tidak perlu digambarkan.
Aliran dalam context diagram memodelkan masukan ke sistem
dan keluaran dari sistem seperti halnya sinyal kontrol yang diterima
atau dibuat sistem. Aliran data hanya digambarkan jika diperlukan
untuk mendeteksi kejadian dalam lingkungan dimana sistem harus
memberikan respon atau membutuhkan data untuk menghasilkan
respon. Selain itu, aliran data dibutuhkan untuk menggambarkan
transportasi antara sistem dan terminator. Dengan kata lain aliran
data digambarkan jika data tersebut diperlukan untuk menghasilkan
respon pada kejadian tertentu. Dalam hal ini kita seharusnya
15

menggambar context diagram dengan asumsi bahwa masukan
disebabkan dan diawali oleh terminator, sedangkan keluaran
disebabkan dan diawali oleh sistem. Dengan mencegah interaksi
yang tidak perlu (extraneous prompts) yang berorientasi pada
implementasi masukan-keluaran dan mengkonsentrasikan
pemodelan pada jaringan aliran data.
Kadang-kadang diperlukan dialog karena terminator tidak tahu
sistem memerlukan masukan atau sistem tidak memberikan keluaran
karena tidak tahu terminator membutuhkannya. Dalam hal ini
interaksi menjadi diperlukan dan diasumsikan menjadi bagian esensi
sistem.

2.2.2 DFD Level
Data flow diagram adalah suatu gambaran grafis dari suatu
sistem yang menggambarkan proses keseluruhan sampai proses
terkecil, aliran data dan penyimpanan data atau arus data dari suatu
sistem, merupakan model logis yang menjelaskan sistem sebagai
jaringan kerja (sub sistem) dari proses yang dihubungkan satu
dengan yang lainnya dan atau dihubungkan dengan tempat
penyimpanan data serta dihubungkan pula dengan sumber dan
tujuan.
Pembuatan DFD hanyalah merupakan proses mengidentifikasi
berbagai proses, mengaitkan dengan arus data untuk membuat
hubungan, menyediakan terminator untuk menerima input dan
mengeluarkan ouput. DFD juga merupakan alat yang berfungsi
untuk menggambarkan secara rinci mengenai sistem sebagai jaringan
kerja antar fungsi yang berhubungan satu sama lain dengan
menunjukkan arus data yang mengalir serta penyimpanannya.



16

Tabel 2.2.2 Simbol-simbol Data Flow Diagram
Empat symbol dasar yang digunakan untuk memetakan
gerakan-gerakan diagram aliran data adalah:
a. ExternalEntity (Entitas) / Terminator
Suatu entitas dapat disimbolkan dengan suatu notasi kotak
sebagai berikut:

Kotak ini digunakan untuk menggambarkan suatu entitas
eksternal (bagian lain, sebuah perusahaan, seseorang, atau
mesin) yang dapat mengirim data atau menerima data dari
sistem. Entitas ini disebut juga sumber atau tujuan data, dan
dianggap eksternal terhadap sistem yang sedang digambarkan.
Setiap entitas diberi label dengan sebuah nama yang sesuai.
Meskipun berinteraksi dengan sistem, namun dianggap di luar
batas-batas sistem. Entitas tersebut harus diberi nama dengan
No. Simbol Keterangan
1.

Menunjukkan Entity
Yaitu pemakai atau pelaku dalam
konteks sistem yang dibuat
2.


Menunjukkan proses
3.

Menunjukkan alat penghubung, yang
digunakan untuk menghubungkan
entity dengan proses
4.

Menunjukkan output atau data yang
dikeluarkan dri suatu proses

17

suatu kata benda entitas yang sama bisa digunakan lebih dari
sekali atas suatu diagram aliran data tertentu untuk menghindari
persilangan antara jalur-jalur aliran data. Bentuk dari eksternal
entity diantaranya adalah sebagai berikut:
1. Suatu kantor, departemen atau divisi dalam perusahaan
tetapi di luar sistem yang sedang dikembangkan.
2. Orang/sekelompok orang di organisasi tetapi di luar sistem
yang sedang dikembangkan.
3. Suatu organisasi atau orang yang berada di luar organisasi
seperti misalnya langganan, pemasok, dll.
4. Sistem informasi yang lain di luar sistem yang sedang
dikembangkan.
5. Sumber asli dari suatu transaksi
6. Penerima akhir dari suatu laporan yagn dihasilkan oleh
sistem.
b. Data Flow/Arus Data
Suatu arus data dapat disimbolkan dengan menggunakan suatu
notasi tanda panah berikut:
Tanda panah ini menunjukkan perpindahan data dari satu
titik ke titik yang lain, dengan kepala tanda panah mengarah ke
tujuan data. Karena sebuah tanda panah menunjukkan
seseorang, tempat atau sesuatu, harus digambarkan dalam kata
benda. Bentuk dari arus data diantaranya adalah sebagai berikut:
1. Formulir atau dokumen yang digunakan di perusahaan
2. Laporan tercetak yang dihasilkan oleh sistem
3. Tampilan atau output di layar komputer yang dihasilkan
oleh sistem
4. Masukan untuk komputer
5. Komunikasi ucapan
6. Surat-surat atau memo
18

7. Data yang dibaca atau direkamkan ke suatu file
8. Suatu isian yang dicatat pada buku agenda
9. Transmisi data dari suatu komputer ke komputer yang lain
c. Process / Proses
Suatu proses dapat disimbolkan seperti:

Atau

Bujur sangkar dengan sudut membulat / lingkaran
digunakan untuk menunjukkan adanya proses transformasi.
Proses-proses tersebut selalu menunjukkan suatu perubahan
dalam di dalam atau perubahan data. Jadi, aliran data yang
meninggalkan suatu proses selalu diberi label yang berbeda dari
aliran data yang masuk. Proses-proses yang menunjukkan hal itu
di dalam sistem dan harus diberi nama menggunakan salah satu
format berikut ini. Sebuah nama yang jelas memudahkan untuk
memahami proses apa yang sedang dilakukan. Pemberian nama
pada proses:
1. Menetapkan nama sistem secara keseluruhan saat
menamai proses pada level yang lebih tinggi. Contoh:
sistem kontrol inventaris.
2. Menamai suatu subsistem utama, menggunakan nama-
nama seperti: Sistem pelaporan inventaris atau Sistem
pelayanan konsumen internet.
3. Menggunakan format kata kerja-kata sifat-kata benda
untuk proses-proses yang mendetail. Kata kerja yang
menggambarkan jenis kegiatan yang seperti ini, misalnya
menghitung, memverifikasi, menyiapkan, mencetakatau
menambahkan. Contoh-contoh nama proses yang lengkap
adalah: menghitung pajak penjualan, memverifikasi status

19

rekening konsumen, menyiapkan invoice pengapalan,
mencetak laporan yang diurutkan ke belakang, mengirim
konfirmasi email ke konsumen, memverifikasi neraca
kartu kredit dan menambah record inventaris.
d. Data Store (Penyimpanan Data)
Data store dilambangkan dengan bujur sangkar dengan ujung
terbuka. Atau

Yang menunjukkan penyimpanan data. Penyimpanan data
menandakan penyimpanan manual, seperti lemari file/sebuah
file/basis data terkomputerisasi. Karena penyimpanan data
mewakili seseorang, tempat atau sesuatu, maka diberi nama
dengan sebuah kata benda. Penyimpanan data sementara seperti
kertas catatan/sebuah file komputer sementara tidak dimasukkan
ke dalam diagram aliran data. Bentuk dari penyimpanan data
diantaranya adalah sebagai berikut:
1. Suatu file atau database di sistem komputer
2. Suatu arsip atau catatan manual
3. Suatu kotak tempat data di meja seseorang
4. Suatu tabel acuan manual
5. Suatu agenda atau buku.
Dalam penggambaran penyimpanan data perlu diperhatikan
beberapa hal, antara lain:
a. Hanya proses saja yang berhubungan dengan simpanan
data, karena yang mengggunakan / merubah data di
simpanan data adalah suatu proses.
b. Arus data yang menuju ke simpanan data dari suatu proses
menunjukkan proses update terhadap data yang tersimpan
di simpanan data. Update dapat berupa proses:

20

1. Menambah/menyimpankan record baru atau
dokumen baru ke dalam simpanan data.
2. Menghapus record atau mengambil dokumen dari
simpanan data
3. Merubah nilai data di suatu record atau di suatu
dokumen yang ada di simpanan data
c. Arus data yang berasal dari simpanan data ke suatu proses
menunjukkan bahwa proses tersebut menggunakan data
yang ada di simpanan data.
d. Untuk suatu proses yang melakukan kedua-duanya yaitu
menggunakan dan update simpanan data dapat dipilih salah
satu penggambaran.
2.2.3 Diagram Berjenjang
Diagram berjenjang adalah gambaran mengenai proses-proses
yang terjadi dalam sistem yang akan dibuat. Untuk menggambar
proses dari sebuah sistem dibutuhkan beberapa peralatan Visual
Power Desainer. Dimana peralatan tersebut membantu menjelaskan
bagaimana proses berlangsung.
Power Desainer telah merancang dan dikembangkan untuk
beberapa hal, diantaranya:
a. Menggambarkan suatu struktur bertingkat guna memahami
fungsi dari modul-modul sistem yang akan dipergunakan.
b. Menyediakan penjelasan secara lengkap terhadap input yang
akan digunakan, proses yang dilakukan dan output yang
diinginkan.

2.2.4 Dokumen Flow
Flow of document identik dengan perancangan sistem,
maksudnya hampir setiap pengembang sistem memanfaatkan Flow
of Document sebagai salah satu alat perancangan item untuk
menggambarkan sistem lama pada tahap analisis, atau
21

menggambarkan sistem yang baru pada tahap perancangan Flow of
Document adalah alat pembuatan model yang memungkinkan
profesional sistem untuk menggambarkan sistem sebagai satu
jaringan proses fungsional yang dihubungkan satu dengan yang
lainnya dengan alur data baik secara manual maupun secara
komputerisasi.
Bagian alir ini disebut juga bagian alir formulir yang
menunjukan prosedur dari sistem secara logika yang utama dan arus
laporan.
No. Simbol Keterangan

1.




Simbol Proses

2.


Simbol Display Monitor

3


Simbol Document

4.


Simbol Document

5.


Simbol Input

6.


Simbol Arsip
22

7.


Simbol Penghubung

Tabel 2.2.3 Simbol-simbol Document Flow

2.2.5 ERD (Entity Relationship Diagram)
ERD adalah suatu model jaringan yang menggunakan susunan
data yang disimpan dari sistem acak. Digunakan untuk menunjukkan
objek data dan hubungan-hubungan yang ada pada objek tersebut
dengan menggunakan entity dan relationship yang diperkenalkan
pertama kali oleh Chen pada tahun 1976.
Selain mudah disajikan oleh perancangan database, entity
relationship diagram juga menggambarkan hubungan antara entity
dengan jelas beserta batasan jumlah entity dan partisipasi antar
entity, serta mudah dimengerti oleh pemakai/ pangguna.
E-R Diagram merupakan model yang mendiskripsikan
hubungan antara penyimpanan data yang ada dalam data flow
diagram (DFD). E-R Diagram digunakan untuk memodelkan
struktur data atau hubungan antar data. E-R Diagram merupakan
dasar untuk pengembangan kamus data. Model relasional merupakan
model yang paling sederhana sehingga mudah digunakan dan
dipahami oleh pengguna, model ini menggunakan sekumpulan tabel
berdimensi dua (yang disebut relasi / tabel), dengan masing-masing
relasi tersusun atas tupelo atau baris dan atribut.
E-R Diagram menggunakan sejumlah notasi dan simbol-
simbol yang digunakan sebagai berikut:



23

No. Simbol Keterangan


1.

Menunjukkan entity.
Yaitu suatu object yang dapat di
identifikasikan dalam lingkup
pemakai. Sesuatu yang penting bagi
pemakai dalam konteks sistem yang
dibuat.

2.

Menunjukkan atribut.
Yaitu entity yang mempunyai atribut
dan berfungsi mendiskripsikan
karakter entity.

3.


Menunjukkan hubungan

4.

Menunjukkan alat penghubung. Yang
digunakan untuk menghubungkan
entity dengan entity ataupun entity
dengan atribut.
Tabel 2.4 Simbol-simbol ER-Diagram

2.2.6 Entitas
Entitas merupakan individu yang mewakili sesuatu yang
nyata dan dapat dibedakan dari sesuatu yang lain. Dapat berupa
orang, tempat, objek, atau kejadian.

2.2.7 Attribute
Attribute mendeskripsikan karakteristik dari suatu entitas.
Attribute terdiri dari beberapa tipe attribute, yaitu:
24

1. Atribut sederhana (simple attribute)
Yaitu attribute atomik yang tidak dapat dipilah lagi.
Contoh: NRP
2. Attribute komposit (composite attribute)
Yaitu merupakan atribute yang masih dapat diuraikan lagi
menjadi sub-sub atribut yang masing-masing memilki makna.
Contoh: Nama bisa dipecah menjadi Nama Depan, Nama
Tengah, dan Nama Belakang. Alamat bisa dipecah menjadi
Alamat, Kota, Kode Pos.
3. Attribute bernilai tunggal (Single-Valued Attribute)
Ditujukan pada attributes yang memiliki paling banyak satu
nilai untuk setiap baris data.
Contoh: untuk setiap baris data mahasiswa hanya boleh berisi
satu nilai karena tidak mungkin ada dua NRP untuk satu
mahasiswa yang sama.
4. Attribute bernilai banyak (Multivalued Attribute)
Ditujukan pada atribut-atribut yang dapat diisi dengan lebih dari
satu nilai, tetapi jenisnya sama. Attribute ini dilambangkan
sebagai elips ganda.
Contoh: nomor telepon, gelar, hobi, dll.
5. Attribute turunan
Adalah atribut yang nilai-nilainya diperoleh dari pengolahan
atau dapat diturunkan dari attribute atau tabel lain yang
berhubungan. Attribute turunan sebenarnya dapat ditiadakan dari
sebuah tabel karena nilai-nilainya bergantung pada nilai yang
ada di attribute lainnya.
Contoh: attribute umur yang dapat dikalkulasi dari attribute
tanggal hari ini (tanggal sistem) dikurangi tanggal lahir.
Attribute turunan dilambangkan sebagai elips titik-titik.


25

2.2.8 Relasi
Relasi menunjukkan adanya hubungan di antara sejumlah
entitas yang berasal dari himpunan entitas yang berbeda.
Contoh: Antara dosen_wali dan Mahasiswa terdapat hubungan
berupa bimbingan, antara nasabah dan pinjaman bank terdapat
hubungan peminjam.

2.2.9 Kardinalitas
Kardinalitas dalam relationship digunakan untuk menjelaskan
batasan pada jumlah entity yang berhubungan melalui suatu
relationship. Beberapa hubungan antar entity adalah sebagai berikut:
1. One to one (1 : 1)
Setiap attribute pada himpunan entitas A berhubungan paling
banyak satu entitas dari himpunan entitas B.

1 1

2. One to many (1 : M)
Setiap entitas pada himpunan entitas A berhubungan banyak
dengan entitas dari himpunan entitas B, dan tidak sebaliknya.
1 M


3. Many to one (M : 1)
Setiap entitas pada himpunan entitas A berhubungan dengan
satu entitas dari himpunan entitas B. di mana satu entitas
himpunan entitas B bisa memiliki lebih dari satu, dan tidak
sebaliknya

M 1
Gambar 2.2.3 Kardinalitas M to 1



Gambar 2.2.1 Kardinalitas 1 to 1
Gambar 2.2.2 Kardinalitas 1 to M
26

4. Many to many (M : M)
Setiap entitas pada himpunan entitas A dapat berhubungan
dengan banyak entitas pada himpunan entitas B, dan juga
sebaliknya.

M M

Derajat relationship adalah jumlah entity yang berpartisipasi dalam
suatu relationship. Ada tiga derajat relationship dalam ERD, yaitu:
1. Unary (derajat satu)
Yaitu satu relationship yang dihubungkan dengan satu entity,
dimana penghubungnya ada dua.






2. Binary (derajat dua)
Yaitu satu relationship dihubungkan dengan dua entity yang
berbeda.



3. Teranary (derajat tiga)
Yaitu satu relationship menghubungkan tiga entity yang berbeda
satu sama lain.





Gambar 2.2.4 Kardinalitas M to M
Gambar 2.2.5 Simbol Unary
Gambar 2.2.6 Simbol Binary
27

Gambar Simbol Teranary







2.2.10 Hubungan Antar Tabel
Setiap tabel berisi data yang dideskripsikan oleh sebuah sebuah
entitas. Contoh: entitas Pegawai dapat ditransformasikan ke dalam
tabel Pegawai yang biasa berisi data berupa NIP, nama, alamat,
telepon, dan lain-lain. Untuk membedakan antara baris data yang
satu dengan yang lalin kita membutuhkan sebuah key. Key adalah
satu atau gabungan dari beberapa atribut yang dapat membedakan
semua baris data (row) dalam tabel secara unik.
Key terdiri dari empat macam, yaitu:
1. Super Key
Merupakan satu atau lebih atribut (kumpulan atribut) yang dapat
membedakan setiap baris data dalam sebuah tabel secara unik.
Contoh: pada entitas Pegawai, maka atribut yang dapat menjadi
superkey adalah {NIP, nama, alamat}.
2. Candidate Key
Merupakan satu atau satu set minimal atribut yang bisa dipilih
untuk menjadi primary key.
Contoh: NIP adalah candidate key, nama adalah candidate key
apabila anda dapat menjamin tidak ada nilai yang sama untuk
atribut ini. Salah satu dari candidate key dapat menjadi
primarykey.


Gambar 2.2.7 Simbol Teranary
28

3. Primary key
Merupakan satu atribut atau satu set minimal atribut yang tidak
hanya mengidentifikasi secara unik suatu kejadian spesifik tetapi
juga dapat mewakili setiap kejadian dari suatu entitas.
Contoh: NIP lebih dapat dijadikan primary key daripada nama
dikarenakan NIP pasti unik dan tidak mungkin ada pegawai yang
memiliki 2 NIP yang sama, namun untuk nama tidak dapat
memastikan kalau nama tersebut pasti unik.
4. Foreign key
Entitas Pegawai tidak dapat berdiri sendiri, perlu
mengkombinasikan dengan entitas lain. Sembarang atribut yang
menunjuk ke primary key pada tabel lain. Foreign key dapat
menunjuk pada tabel yang sama (tabel sendiri) tidak selalu harus
menunjuk pada tabel yang lain.

2.2.11 Normalisasi
Normalisasi adalah suatu proses rancangan database untuk
mendapatkan bentuk normal. Normalisasi berkaitan dengan suatu
proses, sedangkan normal form berkaitan dengan output proses. Jika
suatu relasi berada dalam bentuk normal, maka dia juga termasuk
dalam bentuk normal tersebut didalamnya atau dibawahnya.
Suatu relasi dikatakan sudah berada dalam bentuk normalisasi
tertentu bila memenuhi beberapa yang lebih tinggi dianggap lebih
baik dari tingkat dibawahnya. Normalisasi yang akan digunakan
pada sistem ini hanya sampai dengan tingkat 3 NF (Third Normal
Form). Tingkatan- tingkatan normalisasi:
1. Fisrt Normal Form ( 1NF )
Suatu relasi dikatakan sudah memenuhi bentuk normal kesatu (1
NF) bila setiap data bersifat atomic yaitu tiap atribut hanya
mempunyai satu nilai dan tidak ada set atribut yang berulang-
ulang.
29

2. Second Normal Form ( 2NF )
Suatu relasi dikatakan sudah memenuhi bentuk normal kedua (2
NF) bila relasi tersebut sudah memenuhi bentuk normal kesatu,
dan atribut yang bukan key sudah tergantung penuh terhadap
key-nya.
3. Third Normal Form ( 3 NF )
Suatu relasi dikatakan sudah memenuhi bentuk Normal ketiga (3
NF) bila relasi tersebut sudah memenuhi bentuk normal kedua
dan atribut yang bukan key tidak tergantung transitif terhadap
key-nya.

2.2.12 Bahasa Basis Data (Database Language)
Database Management System (DBMS) merupakan perantara
bagi pemakai dengan basis data dalam disk. Cara berinteraksi /
berkomunikasi antara pemakai dengan basis data tersebut diatur
dalam suatu bahasa khusus yang ditetapkan oleh perusahaan
pembuat DBMS. Sebuah basis data biasanya dapat dipilah ke dalam
2 bentuk, yaitu:
1. Data Definition Language
2. Data Manipulation Language

2.2.13 Data Definition Language
Pada Data Definition Language (DDL) dibahas mengenai hal-
hal yang berkaitan dengan struktur tabel. Pada bagian ini dibahas
mengenai bagaimana cara membuat tabel (create table), mengubah
tabel (alter table), dan menghapus tabel (drop table).
Tabel merupakan unit dasar penyimpanan data yang terdiri dari
sejumlah baris (rows) dan sejumlah kolom (column). Kolom-kolom
pada suatu tabel didefinisikan ketika tabel tersebut dibuat. Jumlah
baris tergantung pada operasi DML yang dikenakan padanya dan
30

cenderung berubah. SQL statement yang digunakan untuk membuat
tabel adalah create table statement.
1. Membuat tabel (create table)
Jenis tipe data dalam DDL(Data Definisi Language) :
a. Char (n)
Mendefinisikan string sepanjang n karakter. Bila n tidak
disertakan, maka panjang karakter adalah 1.
b. Varchar (n)
Mendefinisikan string yang panjangnya bisa berubah-ubah
sesuai dengan kebutuhan, namun string tersebut dibatasi
sebanyak n karakter. Oracle merekomendasikan varchar2.
c. Varchar2 (n)
Mendefinisikan string yang panjangnya bisa berubah-ubah
sesuai dengan kebutuhan, namun string dibatasi sebanyak
n karakter. Maksimun karakter pada varchar2 adalah 2000
karakter.
d. Long
Mendefinisikan tipe data binary, maksimun 2 Giga Byte,
disimpan dalam format internal oracle.
e. Long Raw
Sama dengan long yaitu mendefinisikan tipe data binary
maksimun 2 Giga Byte, tidak dikonversi oleh oracle (data
mentah apa adanya).
f. Date
Mendefinisikan tanggal, menyimpan tahun, bulan, hari,
jam, menit dan detik.
g. Number (n,p)
Mendefinisikan angka pecahan, baik fixed decimal atupun
floating point. Nilai n adalah jumlah bytes total dan p
adalah presisi angka dibelakang koma.

31

Keterangan:
Tipe data non oracle dapat dikonversi sebagai berikut:
DECIMAL NUMBER
INTERGER, INT NUMBER(38)
SMALLINT NUMBER(38)
FLOAT NUMBER
REAL NUMBER
DOUBLE NUMBER
2. Mengubah table (alter table)
Pada prinsip mengubah tabel berarti mengubah struktur tabel.
Pada pengubahan struktur tabel ini ada beberapa kemungkinan,
diantaranya adalah mengubah struktur dalam artian
memodifikasi salah satu atau beberapa field pada table tersebut
atau dalam artian menambah satu atau beberapa field pada
tabel tersebut.
Sintaks untuk mengubah struktur tabel adalah sebagai berikut :
Alter Table nama_tabel
ADD | MODIFY nama field tipe_data (lebar_field);
3. Menghapus Tabel (Drop Table)
Pada kenyataannya banyak tabel yang harus dihapus karena
ada beberapa kesalahan atau ada tabel yang sudah tidak
diperlukan. Untuk dapat menggunakan perintah tersebut ada
sintaks selengkapnya adalah:
Drop Table nama_tabel
Keterangan:
Perintah drop table ini akan berhasil jika tabel yang dihapus
adalah tabel yang tidak ada relasinya (tabel yang berdiri
sendiri). Juga akan berhasil jika yang anda hapus adalah tabel
relasi (tabel yang mengacuh pada tabel yang lain). Dalam
kasus ini tabel relasi adalah tabel pasok dan tabel pembelian.
32

Jika anda menghapus tabel acuan atau tabel references, maka
perintah drop table ini tidak akan berhasil.
2.2.14 Data Manipulation Language
Data Manipulation Language adalah bahasa untuk
memanipulasi data yang terdapat dalam database, operasi DML
meliputi beberapa hal, diantaranya yaitu:
a. Pengambilan informasi yang disimpan dalam basis data
b. Penyisipan informasi baru ke basis data
c. Penghapusan informasi dari basis data
d. Modifikasi informasi yang disimpan dalam basis data
Ada dua jenis DML, yaitu:
1. Procedural
Yaitu yang mensyaratkan agar pemakai menentukan data apa
yang diinginkan serta bagaimana cara mendapatkannya.
2. Non procedural
Yaitu yang membuat pemakai dapat menentukan data apa yang
diinginkan tanpa menyebutkan bagaimana cara
mendapatkannya.
Pada Data Manipulation Language (DML) akan dibahas
bagaimana cara memanipulasi data. Manipulasi yang dimaksud
disini meliputi bagaimana cara memasukkan data atau record ke
dalam tabel (insert), memperbaharui data (update), menghapus data
(delete), dan memilih atau menyeleksi data (select).
1. Memasukkan Data (insert)
Pada prinsipnya insert bertujuan mengisikan data / record ke
dalam suatu tabel. Pengisian data ini bisa berlaku untuk satu
record penuh. Artinya, semua field dalam record tersebut akan
diisi. Selain itu, kita juga diijinkan untuk mengisikan beberapa
field saja dalam record tersebut.
Sintaks SQL-nya adalah sebagai berikut:
33

INSERT INTO nama_tabel(field ke 1, ..., field ke-n)
VALUES (nilai_field ke-1, ..., nilai_field ke-n)
Keterangan :
tabel (field ke 1, ..., field ke-n)
adalah nama field yang ada pada tabel dan sifatnya optional.
(nilai_field ke-1, ..., nilai_field ke-n)
Adalah isi dari field pada tabel dan harus diisi.
2. Memperbaharui Data (update)
Pada prinsipnya update adalah memperbaharui data lama
dengan data baru atau data terkini. Jadi perintah update ini
digunakan apabila sudah ada suatu data atau record, namun
record tersebut ternyata salah. Kesalahan pada satu record ini
bisa terjadi hanya ada pada satu field saja atau seluruh field pada
record tersebut. Kesalahan bisa disebabkan karena pengisian
data atau pengetikan yang kurang teliti atau karena sebab yang
lain.
Sintak untuk update sebagai berikut:
UPDATE nama_tabel
SET nama_field = data_baru
WHERE nama_field = data_lama
3. Menghapus Data (delete)
Pada prinsipnya delete adalah untuk menghapus data atau
record. Penghapusan record bisa dilakukan secara keseluruhan.
Artinya seluruh record dalam tabel tersebut akan dihapus.
Penghapusan data atau deletion juga bisa dilakukan untuk
sebagian data saja. Pada penghapusan data tipe ini digunakan
kondisi where sebagai suatu kondisi untuk memilih record mana
yang akan dihapus.

34

Sintak SQL untuk menghapus record:
DELETE FROM nama_tabel
[ WHERE kondisi ]
4. Memilih Data/ seleksi Data (select)
Pada prinsipnya sintak SQL select bertujuan untuk menampilkan
/ menyeleksi data. Yang diinginkan dari sekumpulan datan yang
ada. Untuk lebih jelasnya perhatikan contoh berikut :
Select * nama_tabel.

2.2.15 Data Control Language (DCL)
DCL ( Data Control Language )
Berisi perintah-perintah untuk mngendalikan pengaksesan data.
Yang termasuk DCL adalah:
GRANT memberikan kendali pada pengaksesan data.
REVOKE mencabut kemampuan pengaksesan data
LOCK TABLE mengunci table
Perintah yang termasuk dalam SQL DCL adalah :
1. Grant
Adalah perintah untuk memberikan hak akses tertentu
kepada satu orang user atau lebih. Perintah Grant,
Grant adalah pembelian hak akses data kepada user
untuk mengakses tabel pada database Oracle. Ada
beberapa hak yang diberikan kepada user yaitu:
a. All Privileges : User diberi semua hak untuk
mengakses data dari tabel
b. Select : User diberi hak akses untuk mengambil
data dari tabel
c. Delete : User diberikan hak akses untuk
menghapus data dari tabel
35

d. Update : User diberikan hak akses untuk
mengubah data dari tabel
Syntax: GRANT <spesifikasi_akses>
ON <nama_tabel/nama_view> TO <nama_user>
[WITH GRAN OPTION
2. Revoke
Adalah perintah untuk mencabut hak akses tertentu
kepada satu orang user atau lebih.
Syntax: REVOKE <spesifikasi_akses>
FROM <nama_user>;
3. Commit
Konfirmasi menyimpan data di memory ke database
(Commit) Commit adalah proses transaksi data yang
disimpan dengan melakukan manipulasi data. Perlu
diketahui bahwa setiap manipulasi data baik untuk
menambah, menghapus, dan mengubah data sebaiknya
menggunakan perintah Commit.
Berikut ini contoh penggunaan Commit:
SQL > Insert Into mahasiswa values
(1,Agus Fajar S P,PanjangJiwo
No1,1234567,2010,01-Jan-2010);
1 row created.
SQL > Commit;
Commit complete.
Pernyataan di atas menjelaskan tentang penambahan data
pada tabel mahasiswa dengan nilai masing-masing field
yang disesuaikan dengan tipe data dan panjang
maksimumnya.
Untuk melihat isi tabel mahasiswa yang sudah dikenai
perintah commit, gunakan perintah SELECT seperti
contoh ini:
36

SQL > Select * From Mahasiswa;
Syntax :
COMMIT [WORK];
Contoh:
INSERT INTO Pelajar
VALUES (05438,APOS,09-AUG-1990,1,L);
COMMIT;
4. Rollback
Mengembalikan status transaksi sebelum penyimpanan
(Rollback). Rollback digunakan untuk membatalkan
transaksi saat memanipulasi data. Bila anda melakukan
manipulasi data dan melakukan commit, maka perintah
rollback dapat membatalkan transaksi tersebut.
Contoh penggunaan Rollback sebagai berikut:
SQL > DELETE From Mahasiswa
WHERE NIM = 1;
1 row deleted.
SQL > ROLLBACK
Rollback complete.
Pernyataan diatas menjelaskan tentang penghapusan satu
baris data dari tabel Mahasiswa dengan nilai kolom
NIM=1. Untuk mengembalikan nilai seperti semula
digunakan perintah Rollback.
Syntax:
ROLLBACK [WORK];

2.2.16 Object-objectDatabase
Object-objectdatabase oracle dapat dibagi atas dua kelompok,
yakni schema object dan non-schema object. Apa yang dimaksud
dengan schema? Sebuah schema adalah sekumpulan data yang
kepemilikannya dipunyai oleh user database yang namanya sama
37

dengan nama schema tersebut. Object schema dapat dibuat dan
dimodifikasi menggunakan DDL statement.
Object schema pada oracle diantaranya adalah:
a. Index
b. Stored procedure dan stored function
c. Package
d. Private synonym
e. Sequence
Secara umum ada dua jenis sub program yaitu Stored
procedure dan function. Procedure secara umum diaktivasi oleh
statement atau kata kunci execute pada oracle. Sedangkan Function
secara umum diaktivasi dalam statement pemrograman yang juga
selain membentuk blok juga harus mengevaluasi ekspresi atau nilai
ketika pemanggilan dilakukan dan akan mengembalikan suatu nilai
(return value) dari hasil pemrosesan.
Dalam pemanggilan kedua sub program ini, keduanya dapat
mengacu pada kumpulan parameter yang bertipe tertentu. Kumpulan
parameter tersebut pada kasus tertentu dapat tidak digunakan.
Perbedaan mendasar dari function dan procedure adalah pada
function ada daerah asal (domain) yang melalui proses tertentu akan
menghasilkan daerah hasil (range) yang merupakan nilai balik
(return value). Pada procedure tidak ada sesuatu yang secara khusus
merupakan nilai balik, tetapi jika nilai yang diolah pada keadaan
awal dan dihasilkan pada keadaan akhir adalah parameter global,
maka parameter tersebut dapat saja dianggap sebagai nilai balik.
Ada dua jenis parameter yang digunakan dalam sub program
yaitu yang pertama: parameter formal atau input yang digunakan
dalan mendefinisikan suatu sub program. Parameter formal adalah
sekumpulan nama yang akan dipakai dalam proses pengisian harga
tersebut ketika sub program akan dijalankan. Sedangkan yang kedua
38

adalah parameter aktual. Parameter aktual adalah nilai atau ekspresi
atau nama variable yang diisi pada proses pemanggilan sub program.
Pendefinisian variabel dalam sub program, mirip dengan
sebagaimana program, yaitu mendefinisikan kamus local dimana
kesemuanya kamus tersebut merupakan private, artinya alokasi
memory-nya bersifat local dan dialokasikan kembali ketika sebuah
sub program dapat ditentuka konteks penggunaanya dalam
pendefinisian di dalam sub program itu sendiri, misalnya apakah
suatu variabel dideklarasikan secara local atau global.
Dalam sub program dikenal istilah pass by references, pass by
value. Istilah by references artinya suatu sub program menggunakan
parameter dengan nilai variabel, konstanta, atau ekspresi yang
dideklarasikan pada kamus global. Sedangkan by value artinya sub
program menggunakan langsung nilai parameternya.
Dalam function atau procedure dapat dilakukan pemograman
dengan menggunakan sequence, pengulangan (LOOP), seleksi (IF
atau CASE) ataupun deklarasi variabel.

STORED PROCEDURE
Procedure dibentuk dari perintah, variabel, serta alur logic
yang terdapat pada SQL. Procedure bisa dijalankan secara manual
pada SQL atau PL/SQL.
Beberapa hal yang penting dalam procedure adalah bagaimana
membuatnya, menghapus, memanggil, dan mengontrol siapa saja
yang berhak menggunakan.
Dengan contoh kasus kita dapat membuat suatu procedure
untuk menampilkan kode_buku, no_induk, nama (siswa) dari tabel
pinjam. Dimana procedure ini juga dapat dilakukan dengan
menggunakan function get_judul() dan function get_name() yang
telah dibuat sebelumnya.
39

Dalam oracle baik untu FUNCTION maupun PROCEDURE
tidak dapat mengembalikan nilai berupa RECORD/RESULSET
yang langsung bisa dilempar ke editor PL/SQL. Untuk
menampilakannya harus mengubahnya dalam bentuk teks dengan
menggunakan procedure/package built-in.
DBMS_OUTPUT.PUT_LINE().
STORED FUNCTION
Stored Function tidak jauh berbeda dengan stored procedure
hanya saja function memberikan nilai balik (return value). Untuk
membedakan antara function dan procedure di dalam sebuah
package, biasanya function di sebut dengan istilah stand-alone
stored function. Secara garis besar oracle membagi fungsi-fungsi
dalam oracle SQL atas 2 kategori: Single Row dan Multiple Row.
Single RowFunction DNS yang hanya menerima satu baris sebagai
operannya, sedangkan Miltiple Row Function bisa menerima lebih
dari satu baris sebagai operannya. Jumlah panah yang masuk ke
masing-masing kotak (Single Row Function dan Multiple Row
Function) melambangkan operand dan row).

40

1. Single Row Function
Gambar di bawah ini memperlihatkan lima kategori Single Row
Function







Operasi yang termasuk subkategori general adalah DECODE, yaitu
yang berlakuumum bagi banyak tipe. Operasi-operasi yang termasuk
subkategori konversi memiliki nama yang banyak dimulai dengan
TO_() contoh: Opaerasi untuk menkonversi ke karakter atau string
bernama TO_CHAR, untuk konversi ke DATE ( Tanggal ) bernama
TO_DATE, untuk konversi ke numerik bernama TO_NUMBER.
Terkecuali ada pada operasi NULL, yang menkorversi Nilai NULL
menjadi nilai bukan NULL ke tipe CHAR atatu VARCHAR, DATE
dan NUMERIK.

2.3 Oracle
Sebuah database Oracle adalah sekumpulan dari data yang
diperlakukan sebagai sebuah kesatuan dan merupakan software database
yang banyak dipakai di perusahaan diseluruh dunia saat ini. Tujuan dari
sebuah database adalah untuk menyimpan dan mengambil kembali
informasi yang diperlukan dengan cepat. Sebuah server database adalah
merupakan kunci bagi solusi permasalahan-permasalahan berkaitan dengan
manajemen informasi. Secara umum sebuah server mampu mengelola data
yang besar dengan jumlah user yang banyak serta menjamin konkurensi
bagi user dalam mengakses data secara bersamaan.
Function
Single Row
Function
Multiple Row
Function
Gambar 2.2.8 Single Row Function
41

Oracle (NASDAQ: ORCL) adalah perusahaan piranti lunak
enterprise terbesar di dunia yang menyediakan piranti lunak enterprise
kepada perusahaan dan organisasi terbesar dan paling sukses di dunia.
Oracle menyediakan produk-produk database, application server,
collaboration selain enterprise businessapplications dan perangkat
application development. Oracle adalah perusahaan piranti lunak pertama
yang mengembangkan dan 100 persen menggunakan piranti lunak
enterprise di atas internet di seluruh lini produknya. Sejak diluncurkannya
database relational pertama di dunia pada tahun 1977, Oracle telah menjadi
bagian penting dalam revolusi teknologi yang secara nyata mengubah bisnis
modern. PT Oracle Indonesia adalah anak perusahaan dari Oracle
Corporation, yang didirikan pada tahun 1995.
Disamping itu sistem security handal, oracle merupakan
softwaredatabase yang bisa menampung serta mengelolah data dengan
kapasitas yang sangat besar serta dapat mengaksesnya dengan sangat cepat
pula. Sintak SQL nya hampir seluruhnya telah memenuhi standart ANSI-92
lebih lebih memudahkan para programer database dalam membangun
aplikasi baik dari sisi back end maupun dari front end. Demikian pula
bagi seorang administrator yang bercimpung dalam menangani administrasi
database serta bertanggung jawab terhadap keamanan database akan merasa
diuntungkan serta dimudahkan dengan software Oracle yang lebih
establish ini.
Namun demikian karena harganya relatif mahal maka oracle
kebanyakan hanya bisa di beli oleh perusahaan ataupun konsultan yang
mempunyai dana cukup besar pula. Bagi anda yang berminat untuk bekerja
di perusahaan besar dan berskala internasional sudah saatnya anda mulai
dari sekarang meng-update pengetahuan anda, yaitu dengan cara
mempelajari Oracle.



42

2.3.1 Sekilas SQL dan PL/SQL
SQL adalah singkatan dari Structured Query Language. SQL
secara garis besar terdiri dari 3 bagian yaitu:
1. DDL (Data Definition Language)
2. DML (Data Manipulasi Language)
3. DCL (Data Control Language)
PL/SQL merupakan kombinasi dari SQL dan pemrograman
bahasa prosedural. Pada prinsipnya PL/SQL ini dalah merupakan
pemrograman bahasa prosedural yang di dalamnya diletakkan
sintak-sintak SQL.

2.3.2 Instalasi Oracle
Langkah-langkah untuk meng-install Oracle XE adalah sebagai
berikut:
a. Proses peng-install-an dapat segera dilakukan dengan
melakukan double klik pada file instalasi (file bernama
OracelXE.exe).





b. Saat muncul tampilan windows install wizard seperti di bawah







Gambar 2.3.1 Installer Oracle
Gambar 2.3.2 Preparing to Install Oracle
43

c. Ini klik tombol next.










d. Kemudian akan muncul window mengenai perjanjian lisensi.
Klik pilihan accept the agreement dan kemudian klik tombol
next.

Gambar 2.3.3 Install Wizard Oracle
Gambar 2.3.4 Lincense Agreement Oracle Database 10g

44

e. Setelah itu klik next untuk langkah selanjutnya sehingga muncul
tampilan pemilihan direktori tujuan instalasi seperti di bawah
ini. Klik tombol next untuk melanjutkan.











f. Kemudian isikan password untuk database.
Contoh: p4ssw0rd
Setelah konfirmasi password tersebut silahkan klik tombol next.
Password ini akan digunakan untuk proses login ke dalam
database dengan user sys atau system, yaitu user bawaan dari
Oracle yang otomatis terbentuk pada saat proses instalasi.










Gambar 2.3.6 Specify Database Password
Gambar 2.3.5 Choose Destination Location
45

g. Kemudian akan muncul tampilan dibawah ini (konfirmasi
setting-an instalasi Oracle XE), kemudian klik install untuk
melanjutkan proses instalasi.











h. Kemudian akan muncul tampilan seperti di bawah ini. Tunggu
berapa saat sampai proses selesai.












Gambar 2.3.7 Summary Oracle
Gambar 2.3.8 Setup Status
46

i. Setelah itu proses penginstalan selesai dan klik finish.








j. Kemudian akan muncul tampilan browser dan silahkan mencobanya
dengan memasukkan:
Username : system
Password : p4ssw0rd (sesuai dengan password yang dimasukkan pada
proses instalasi)










Gambar 2.3.9 Instal Shield Wizard Complete
Gambar 2.3.10 Oracle Conection
47

2.3.3 Konfigurasi Setelah Instalasi
Setelah instalasi dan koneksi (jika menggunakan client-server)
dari client ke serverdatabase selesai, Oracle XE sudah siap untuk
digunakan. Untuk dapat berinteraksi langsung dengan database
Oracle XE, Anda dapat menggunakan SQL*Plus ataupun i-
SQL*Plus dari komputer client maupun dari komputer server.
SQL*Plus adalah interface yang berbasis command line yang
menghubungkan user dengan database, dimana user dapat
melakukan perintah-perintah query baik SQL standar, SQL bawaan
Oracle (PL/SQL), dan perintah-perintah lainnya. Sama halnya
dengan i-SQL*Plus yang merupakan fasilitas baru dari Oracle versi
10 ke atas (Oracle 10g atau Oracle XE), yang membedakannya
adalah i-SQL*Plus berbasis browser.
a. Untuk dapat membuka SQL*Plus (tampilan command line)
langkahnya adalah sebagai berikut:
1. klik Start
2. Program
3. Oracle Database 10g Express Edition
4. Run SQL Command Line.
Atau juga dapat melalui,
1. Start
2. Run
3. Open : sqlplus
4. OK, window SQL*Plus command lineakan tampil.
Setelah window SQL*Plus command line terbuka, akan
ada username dan password. Untuk itu, Anda harus
memasukkan username dan password. Ada user yang
dibuat secara default ketika proses instalasi, yang
terpenting adalah user sysdan systemdengan password
sesuai dengan password yang dimasukkan pada saat
48

instalasi. Kedua user inilah yang paling vital karena
mempunyai hak-hak tertinggi (privileges) dalam mengatur
database. Untuk alasan keamanan, maka password untuk
kedua user ini harus segera diganti setelah proses instalasi.
Cara untuk masuk ke database, yaitu dengan perintah CONN,
contohnya:
--
SQL> CONN
Enter user-name: [username]
Enter password: [*********]
--
atau
--
SQL> CONN [username]/[password]
--

b. Sedangkan untuk dapat membuka i-SQL*Plus (tampilan
browser) adalah :
1. klik Start
2. Program
3. Oracle Database 10g Express Edition
4. Go To Database Homepage
5. Login (dengan mengisikan username dan password)
6. SQL
7. SQL Command
8. Enter Command
Sedangkan cara mengubah password adalah sebagai berikut:
1. Buka SQL*Plus/i-SQL*Plus
2. Selanjutnya lakukan koneksi ke database dengan account
sysatausystem
49

3. Pada SQL*Plus, setelah terkoneksi, pada prompt SQL
(SQL> ) ketikkan perintah sebagai berikut:
--
SQl> PASSW [nama_user]
--
Perintah:
--
SQL> PASSW system
--
Pada i-SQL*Plus langsung saja ketikkan:
PASSW system
Masukkan password lama, kemudian masukkan password baru
misalnya oraclesys, setelah itu ketikkan password baru ini sekali
lagi sebagai verifikasi.

--
Changing password for sys
Old password : *****************
New password : *********
Retype password : *********
--
Beberapa versi Oracle sebelumnya tidak mendukung prosedur
PASSW, maka untuk melakukan penggantian password
gunakan perintah sebagai berikut:
SQL> alter user [nama_user] identified by [password_baru];
Disarankan, jangan menggunakan user sysatau systemuntuk
membangun aplikasi database. Kedua user ini digunakan untuk
keperluan administratif.Selain itu, sangat beresiko untuk
memanipulasi data yang dimiliki kedua user ini karena data yang
50

dimiliki kedua user ini digunakan untuk mendukung jalannya
database secara keseluruhan.

2.3.4 Mengaktifkan User HR
Dalam Praktikum basis data semester ini, digunakan basis data
kepegawaian yang terdiri dari tabel EMPLOYEES,
DEPARTMENTS, JOBS, LOCATIONS, COUNTRIES, DAN
JOB_HISTORY.Tabel - tabel tersebut telah ada pada oracle, kita
hanya perlu mengaktifkannya untuk dapat menggunakannya.
Caranya adalah sebagai berikut :
a. Masuk ke i-SQL*Plus, kemudian login dengan user system.
b. Masuk ke Administration




c. Pilih Database Users







Gambar 2.3.11 Home Oracle
Gambar 2.3.12 Administration Oracle
51

d. Ketikkan hr pada form search, kemudian klik Go. Setelah
muncul user HR, klik pada user HR tersebut.







e. Setelah itu, akan muncul tampilan seperti di bawah ini.
Ketikkan password baru pada form yang tersedia. Kemudian
pilih unlockedpada Account Status. Kemudian klik Alter User.








Gambar 2.3.13 Database Login
Gambar 2.3.14 Manage Database Users
52

f. Kemudian logout, dan login kembali dengan user HR.
Masukkan username HR dan password sesuai dengan
password yang diisikan pada saat mengaktifkan user HR.













g. Masuk ke SQL kemudian SQL Commands, maka akan tampil
workspace sebagai berikut :











Gambar 2.3.14 User HR
Gambar 2.3.15 SQL Commands
53

h. Ketikkan query pada area yang tersedia, kemudian klik
rununtuk mengeksekusi query tersebut. Hasil dari queryakan
ditampilkan di bawah text area.













Gambar 2.3.16 SQL Commands

Das könnte Ihnen auch gefallen