Anda di halaman 1dari 29

SISTEM INFORMASI AKUNTANSI

PEMROSESAN FILE DAN KONSEP MANAJEMEN DATA


BAB 12

Kelompok 4:
Ni Made Cintya Devi Ari Adi (1607531002 / 2)
I Gusti Ayu Ary Amalia Tamara (1607531010 / 4)
Komang Nik Radhi Hardani (1607531013 / 5)
Luh Putu Indah Rahmasari (1607531014 / 6)
Komang Ayusta Devi Savitri (1607531064 / 19)
Ni Putu Gita Darmayanti (1607531144 / 30)

FAKULTAS EKONOMI DAN BISNIS


UNIVERSITAS UDAYANA
TAHUN 2018/2019
12. 1 Pengertian Manajemen Data
Mengenal Berbagai Istilah
Field, Item ata, Atribut, dan Elemen
Istilah field,item ata, atribut, dan elemen sering digunakan bergantian untuk
menggambarkan bagian terkecil dalam data yang akan disimpan dan dimunulkan kembali
dalam sebuah system informasi. Jika hanya beberapa bagian field yang idbutuhkan leh
pengguna, field tersebut harus dibagi ke dalam beberapa item data. Sebah field mungkin
hanya merupakan sebuah karakter tunggal atau angka, atau terdiri dari banyak karakter atau
angka. Contoh field mencangkup bebrapa tem:

- Nama pelanggan
- Nomor jamian social karyawan
- Nomor pesanan penjualan
- Nomor rekening pelanggan
Sebuah field biasanya secara logka disosialisasikan dengan field lainnya: sebuah
pengelompokkan kogis field disebut recod. Record adalah kelompok item data yan terkai
dengan entitas tertentu seperti seorang eanggan, karyawan, vendor, tagihan, dan sebagainya.
Kita akan menuliskan sruktu record tersebut sebagai berikut
RECORD-NAME (FIELD 1, FIELD 2, …, FIELD N)

RECORD-NAME adalah nama record, seperi VENDOR atau EMPLOYEE. Entri yang
berada dalam tanda kurung adala nama-nama field individual dalam record tesebut. Berikut
contohnya:
CUSTOMER (ACCOUNT_NUMBE, NAME, ADDRESS, ACCOUNT_BALANCE)
EMPLOYEE (NAME, SSN. AGE)
PURCHASE_ORDER (PO_#, DATE, AMOUNT, VENDOR, QUANTITY, PRICE)

Dalam contoh yang pertama, CUSTOMER adalah namadari ecord, dan


ACCOUNT_NUMBER, NAME, ADDRESS, dan ACCOUNT_BALANCE adalah nama
field.

Data Occurance
Struktur record memiliki occorance, yang juga disebut instance. Record occurrence
merupakan satu set khusus nilai data untuk recordtersebut. Sebagai contoh untuk record:
EMPLOYEE (NAME, NUMBER, AGE)
Kita akan mempunyai occurrence:
EMPLOYEE (Brown, 111222333, 33)
Dan sebuah occurrence untuk record CUSTOMER akan tampak sebaga berikut:
CUSTOMER (12122, ABC Hardare, 222 West Street, $1,050)
Fixed_lenght Record dan Variable-Length Record
Record dalam sebuah file dapat memiliki panjang data bersifat tetap atau variabel. Dalam
sebuah fixed-length record, aik jumlah field dan panjangnya tiap feld sudah tetap/tertentu.
Fixed-length record lebih mudah dimanipulasi dalam aplikasi computer dibandingkan dengan
variabel-length record karena ukuran fixed-length record terstandarisasi. Kebanyakan record
yang disimpan dalam direct-access storage device (DASD) adalah fixed-length.

Kelemahan fixed-enght record adalah tiap field harus cukup besar untuk memuat
perkiraan entri yang paling maksimum dalam field tersebut. Akibatnya, biasanya terdapat
spasi, missal menyisakan 25 apasi atau banyak spasi utuk sebuah nama, yang pada
kenyataannya banyak nama hanya memerlukan 8 karakter atau kurang. Dalam variabel-
length record lebar field dapat disesuaikan untuk tiap data occurrence. Jumlah atual field
dapat bervariasi dari atu data occurrence dengan data occurrence yang lain.

Akhir seba variabel-length record hars dutandai dengan sebuah symbol khusus atau field
record-lenht yang berisi record itu sendiri. Variabel-length record mampu mengguna secara
efisien ruang penyimpanan yang tersedia, namun manipulasi record tersebut sedikit lebih sult.
Salah satu pendekatan dalam variabel-lenht record yang tidak membutuhkan dukungan
pemrogram system untuk struktur variabel-lenghtnya adalah dengan menggunakan fixed-
length triler record. Trailer record adalah sebuah ekstensi atau perluasan master record.
Trailer record terpisah dari master record dan ditulis bilamana dibutuhka. Engan
menggunakan file piutang dagang yang bersifat open-item, isalnya master record biasanya
hanya akan beisi informasi umum untuk seluruh rekening dan nomor taguhan yang cukup
untuk seluruh rekening yang ada, sementara traler record mampu memuat lebibanyak tagihan
di dalamnya. Sebuah master record dapat mempunyai banyak trailer record
manakaladibutuhkan. Trailer record sendiri dapat ditlis dengan segera setelah sebuah master
record dkerjakan.
Ilustrasi cara untuk mengimplementaskan variabel-length record.
Sebagai contoh misalkan terdapat sebuah perusahaan pemanufakturan Ace Tools yang
menyimpan ratusan komponen mesin sebagai persedan bahan bakunya. Asumsikan pula Ace
Toolos membeli setiap komponen persediaan tersebut dari salah satu pemasoknya dan
kemudian menyimpanya di salah satu gudangnya. Setiapkomponen dapat dibeli dari satu atau
lebih pemasok dan disimpan di satu atau lebih gudang milik perusahaan. Berikut ini field data
yang berisi persediaan komponen mesin tersebut:
PART_NO nomor komponen mesin
PNAME nama komponen mesin
TYPE jenis komponen mesin
COST biaya standar per ui komponen mesin
PVEND nama vendor (pemasok) dari mana kompoen mesin tersebut dibeli
WARHSE gudang tempat komponen mesin tersebut disimpan
LOC dua digit terakhir kode pos tempat gudang yang menyimpan komponen mesin
Dapat dilihat bahwa tidaklah mungkin menyimpan seluruh informasi untuk suatu
komponen mesin tertentu dalam sebuah fixed-length record:
PART (PART_NO, PNAME, TYPE, COST, PVEND, WARHSE, LOC)
Hal ini tidak mungkin digunakan sebagai contoh, karena terdapat lebih dari satu
pemasok untuk setiap komponen mesin dan karena record hanya memiliki satu ruangan untuk
satu pemasok. Sehngga untuk kasus dua pemasok pada satu lokasi penyimpanan, diperlukan
format sebagai berikut:

PART (PART_NO, PNAME, TYPE, COST, PVEND#1, WARSE, LOC#1, #PVEND2,


WARSE#2, LOC#2)

Dimana awalan #1 untuk komponen mesin yang dipasok oleh pemasok nomor 1 dan
#2 untuk komponen mesin yang dipasok oleh pemasok nomor 2. Record bahkan pelu lebih
panjang lagi apabila jumlah pemasok semakin banyak dan lokasi penyimpanan untuk
komponen mesin tertentu. Variabel tersebut akan menjadi variabel length record.

Variabel length record


NAMA RECORD SUPPLIER (Repeated group LOCATION (Repeated
1) group 2)
PART PVEND #01 WARSHE #01, LOG #01
(PART,IMO,PNAME,TYPE, PVEND #02 WARSHE #02, LOG #02
COST PVEND #03 WARSHE #03, LOG #03
PVEND #04 WARSHE #04, LOG #04
∙ ∙
∙ ∙
∙ ∙
PVEND #99 WARSHE #99, LOG #99
Dapat diliat bahwa panjang record variable meningkat karena baik pemasok maupun
lokasi penyimpanan dapat terjadi lebih dari satu kali per record. Sehingga data tersebut
merupakan kelompok field yang berulang kali disimpan. Repeated group adalah kelompok
field yang terkait yang berulang kali disimpan dalam variabel length record. Dalam kolom
diatas, menunjukan kelompok SUPPLIER dan LOCATION. Keduanya merupakan repeated
group yang menjadi milik PART. PART digambarkan sebagai parent (orang tua) dari
SUPPLIER dan LOCATION karena setiap instance PART dilakukan lebih dari satu pemasok
atau lokasi. PART, SUPPLIER DAN LOCATION dapat ditulis sebagai berikut:
PART (PART_NO, PNAME, TYPE, COST)
SUPPLIER (PVEND)
LOCATION (WARSHE, LOC)

PART

SUPPLIER LOCATION

Gambar diagram pohon untuk PART, SUPPLIER dan LOCATION.

Record Key dan Urutan File


Key atau record key adalah item data atau kombinasi item data yang secara unik
mengidentifikasi sebuah record tertentu dalam sebuah file. Perhatikanlah file yang memuat
record berikut dalam format
PART (PART_NO, WARHSE)

Dengan PART_NO sebagai nomor dokumen mesin dan WARSHE sebagai nomor gudang
yang terkait dengan lokasi gudang. Selanjutnya asumsikan file tersebut memuat empat record
ini:
PART (101,1)
PART (102,2)
PART (103,1)
PART (106,1)

Dalam contoh ini, PART_NO adalah key yang digunakan karena ia dapat digunakan untuk
mengidentifikasi secara khusus record maupun dari keempat record yang ada. Namun hal ini
tidak berlaku bagi WARHSE. Sebagai contoh menentukan nilai 1 untuk WARHSE tidak
secara unik mengidentifikasi suatu record tertentu, sebaliknya ia akan mengindentifikasi tiga
record yaitu kesatu, ketiga dan keempat. Dalam beberapa kasus, barangkali perlu
mengkombinasikan dua field untuk menghasilkan sebuah key. Misalnya komponen mesin
dapat disimpan dalam dua gudang, maka record yang dihasilkan:
PART (101,2)
PART(101,1)
PART (102,1)
PART (103,1)
PART (103,2)

Dalam kasus ini, baik PART_NO atau WARHSE masing-masing tidak akan mampu secara
unik mengidentifikasi sebuah record individu. Tetapi bila dilakukan bersama-sama, kedua
field tersebut akan mampu melakukannya. Jadi dengan mengkombinasikan dua field dalam
satu key akan memungkinkan identifikasi dengan tepat. Lima record dalam contoh kedua
dapat diurutkan berdasarkan key PART_NO + WARHSE untuk menghasilkan berikut:
PART (101, 1)
PART (101, 2)
PART (102, 1)
PART (103, 1)
PART (103, 2)

Dalam kasus diatas, , field pertama (PART_NO) disebut sort key primer dan field kedua
(WARHSE) disebut sort key sekunder. Setiap field tambahan diperlukan untuk secara unik
mengidentifikasi dan mengurutkan record berikutnya akan disebut sort key tersier. Sehingga
primary key adalah field yang digunakan untuk mengurutkan record dalam sebuah file,
secondary field digunakan untuk menentukan posisi relatif diantara satu set record yang ada
ketika primary key memiliki nilai yang sama untuk tiap record pada set tersebut. Dalam
contoh sebelumnya, ketika dua record memiliki nilai sama untuk PART_NO, nilai terkecil
untuk WARHSE akan berada pada urutan pertama.

Istilah urutan acak relatif berlaku untuk sebuah field yang filenya tidak diurutkan. Key
merupakan hal yang penting karena diperlukan untuk memproses atau menempatkan record
dalam file.

12. 2 Sistem Manajemen Database dan Arsitekturnya

Terdapat tiga tingkatan arsitektur yang terkait dengan database dan sistem manajemen
daabase :Tingkat Konseptual, tingkat logika, dan tingkat fisik. Pada tingkat konseptual
database adalah kumpulan beragam elemen informasi yang akan digunakan demi tujuan
klafikasi. Sebagai contoh sebuah database pesanan penjualan. Database ini akan didefinisikan
pada tingkat konseptual dengan ragam informasi yang terkait di dalamnya (misal transaksi
penjualan, penerimaan kas, dan informasi pelanggan) dan tujuan digunakannya data tersebut
(misal entri pesanan dan tagihan pelanggan).

Dalam upaya mengimplementasikan sebuah database, yang telah ditentukan pada


tingkat konseptual, field dengan data-data dan record khusus harus ditentukan. Juga perlu
menentukan cara record dan field akan dilihat atau dilaporkan, dan bagaimana keduanya
terkait satu sama lain. Sebagai contoh, akan lebih mudah untuk menampilkan catatan
rekening pelanggan dengan pesanan yang telah dilakukan. Oleh karena itu, field dan record
dalam database distruktur dan diorganisasi dalam cara yang logis,yang kemudian
berkembang menjadi struktur data logika. Tiga jenis dasar struktur data logika dapat
digunakan untuk mencapai tujuan tersebut, yakni hierarkis, jaringan, dan relasional.

Arsitektur database tingkat fisik sangat erat kaitannya dengan teknik implementasi khusus
dan hal-hal yang terkait dengan metode akses data. Terdapat tiga metode akses yang paling
penting (sekuensial, sekuensial berindeks, dan langsung).

1. Arsitektur Database Tingkat Konseptual

Tidak ada satu pun pendekatan standar untuk mengembangkan sebuah model
data konseptual untuk sebuah sistem tertentu. Model data entity-relationship (E-R)
merupakan salah satu pendekatan yang populer. Model E-R secara sederhana
menggambarkan hubungan antara segmen-segmen yang ada. Dalam model E-R,
istilah lebih banyak digunakan daripada istilah segmen, dan istilah atribut digunakan
untuk menjelaskan field individual atau item data tertentu. Bila ditinjau secara grafis,
model E-R menggunakan otak segi empat untuk entitas, elips untuk atribut, dan kotak
belah ketupat untuk menggambarkan hubungan atau relasi. Gambar dibawah ini
menunjukkan sebuah diagram E-R untuk segmen-segmen yang terkait dengan contoh
record PART yang dijelaskan sebelumnya. Dapat dilihat bahwa dua hubungan
digunakan, satu untuk mengindikasi hubungan antara pemasok dan komponen mesin,
dan yang lain untuk mengindikasikan hubungan komponen mesin dengan lokasi
penyimpanan.
Model konseptual lainnya yang biasa digunakan yaitu teknik pemodelan
berorientasi objek (OMT), yang pada awalnya dikembangkan untuk pemograman
berorientasi tujuan dan diadaptasi untuk pemodelan data oleh Blaha, Premerlani, dan
Rumbaugh. Pekerjaan ini dilakukan dengan mengamati kompenen-kompenen dalam
sistem yang sedang dibuat modelnya sebagai kelas-kelas objek. Dalam metode
ini kelas objek adalah sebuah segmen dan sebuah objek adalah sebuah kejadian
tertentu. Seperti halnya dalam model E-R OMT menentukan hubungan antar segmen.
Hubungan pewarisan (inheritance) diciptakan ketika sebuah kelas objek dibagi ke
dalam sub kelas. Sebagai contoh, sebuah kelas umum (general class) atau orangtua
dapat berupa perlengkapan pabirk, yang memiliki subkelas seperti perkakas, mesin-
mesin berat, perlengkapan reparasi, dan sebagainya. Hal penting dalam hal ini adalah
atribut untuk kelas umum perlengkapan pabrik semuanya diwariskan ke setiap
subkelasnya. Untuk memahaminya, kita akan menentukan sebuah kelas objek sebagai
berikut:

PLANT_EQUIPMENT (ACCOUNT_NO, COST, DEPRECIATION)


Kita juga akan mendefinisikan dua subkelas berikut ini:
HEAVY_EQUIPMENT (ACCOUNT_NO, COST, DEPRECIATION, MAINTEN
ANCE_FREQ, DATE_PURCHASED)
dan
HAND_TOOLS (ACCOUNT_NO, COST, DEPRECIATION, USAGE)
Dapat dilihat bahwa HAND_TOOLS dan HEAVY_EQUIPMENT berisi
atribut-atribut dari PLANT_EQUIPMENT (misal
ACCOUNT_NO, COST, DEPRECIATION). Dua subkelas tersebut memiliki atribut
unik mereka sendiri (misal USAGE untuk HAND_TOOLS dan
, MAINTENANCE_FREQ, DATE_PURCHASED untuk HEAVY_EQUIPMENT.
Secara umum, subkelas memiliki seluruh atribut dari kelas orang tuanya ditambah
dengan dengan atribut mereka sendiri. Hubungan tersebut terlihat pada gambar
dibawah ini.
Singkatnya, terdapat sejumlah cara untuk membuat model koneptual sebuah
sistem. Semuanya berusaha mencari metode yang mampu memberikan pemahaman
yang lebih baik tentang sistem dan dokumen. Idealnya seseorang perlu mendapatkan
sebuah model logika dari model konseptual dan kemudian mendapatkan model fisik
dari model logikanya. Namun demikian, teknik-teknik pemodelan konseptual
semuanya memiliki dua kelemahan umum. Pertama, terdapat begitu banyak cara
untuk memodelkan sebuah perusahaan sehingga proses evaluasi terhadap hasil sebuah
teknik tertentu bukanlah hal yang mudah. Kedua, ada risiko bahwa aplikasi sebuah
teknik tertentu dapat menghasilkan gambaran yang tidak lengkap terhadap sistem
yang sedang dimodelkan. Namun demikian, model E-R dapat mengarahkan secara
langsung ke database yang dapat diimplementasikan. Dan pada kenyataannya,
perangkat lunak komersial yang tersedia saat ini menggunakan model E-R dan secara
otomatis menghasilkan sistem database.

OMT mungkin merupakan teknik pemodelan yang paling menjanjikan. Teknik


ini dapat digunakan dengan hubungan tambahan, selain dengan pewarisan yang sudah
ada (seperti agregasi dan asosiasi). Teknik tersebut dapat juga diimplementasikan
dalam tingkatan detail yang berurutan, yang mengarahkan langsung pada database
yang dapat diimplementasikan.

2. Arsitektur Database Tingkat Logika


Terdapat tugas utama yang dihadapi oleh seorang analis ketika mendesain
sebuah database adalah mengidentifikasi dan mendesain hubungan yang sistematis di
antara setiap segmen. Database harus distruktur sedemikian rupa sehingga mampu
menyediakan bagi para penggunanya informasi yang dibutuhkan untuk membuat
keputusan yang efektif. Hubungan yang timbul antara segmen-segmen dalam database
ditentukan oleh struktur data logika, yang juga biasa disebut skema atau model
database.
Tiga model utama dalam struktur data logika yang yaitu : model pohon atau
hierarkis, model jaringan dan, model relasional. Beberapa ahli menyebutkan ada
delapan model tambahan lainnya, namun 3 model-model tersebut merupakan model
yang paling penting untuk diterapkan. Tiga model utama dalam struktur data logika
adalah :
a. Model Pohon atau Hierarkis
Struktur pohon adalah representasi langsung proses segmentasi. Pada
sebuah struktur pohon, setiap lingkaran menunjukkan satu set field (atau segmen),
setiap lingkaran terhubung ke lingkaran lain pada tingkatan berikutnya yang lebih
tinggi dalam pohon tersebut. Tingkatan yang paling akhir disebut lingkaran
parent. Setiap orang tua (parent) memiliki satu atau lebih children, dan hubungan
antara anak dan orang tua disebut branch.
Tampilan penting dalam model pohon ini adalah sebuah lingkaran anak
tidak dapat memiliki lebih dari satu orang tua. Model pohon digunakan pada
struktur data yang didukung oleh COBOL dan program-program bahasa lainnya
yang digunakan secara luas dan telah diimplementasikan pada banyak sistem
manajemen database (DBMS) seperti IMS dan IDMS.
b. Model Jaringan
Struktur jaringan adalah model yang memungkinkan sebuah segmen anak
memiliki lebih dari satu orang tua. Oleh karena itu, sebuah jaringan merupakan
sebuah struktur data yang lebih bersifat umum daripada model pohon. Beberapa
DBMS tidak secara lansung menyediakan struktur jaringan, namun karena setiap
struktur jaringan dapat diubah menjadi struktur pohon, maka dimungkinkan untuk
mengimplementasikan struktur jaringan dalam sistem yang berorientasi pohon.
Model CODASYL adalah sebuah model jaringan.
Model pohon ataupun model jaringan, keduanya diimplementasikan
dengan tambahan field penunjuk (pointer) didalamnya, yang merupakan segmen
lintas hubungan. Segmen lintas hubungan menciptakan percampuran yang nyaris
tidak kentara antara struktur logika data dengan struktur fisik dari penunjuk dan
menghubungkan mekanisme-mekanisme yang dibutuhkan untuk menghubungkan
secara logis segmen-segmen yang ada bersama-sama.
Mengimplementasikan Struktur Pohon dan Jaringan
Terdapat beragam cara untuk mengimplementasikan struktur pohon dan
jaringan. Hal ini termasuk penggunaan daftar dan penunjuk. Dalam sebuah daftar
organisasi, setiap record berisi satu atau lebih petunjuk (field) yang
mengindikasikan alamat record logis berikutnya dengan atribut-atribut yang
sama. Sebuah record tagihan dapat berisi sebuah field yang berisi kunci tagihan
lainnya dari vendor yang sama. Sebuah record dapat dipecah menjadi beberapa
daftar. Daftar ini disebut organisasi multilist. Contohnya sebuah record
pelanggan, dapat berisi beberapa penunjuk dalam sebuah record untuk
menunjukkan record logis berikutnya, struktur logika dan fisik dapat sepenuhnya
berbeda. Gambar dibawah, mengilustrasikan sebuah struktur daftar (list structure)
dab data struktur cincin (ring structure) sederhana.
Struktur cincin berbeda dari struktur daftar dimana record terakhir dalam
struktur cincin menunjuk kembali ke record yang pertama. Dan seluruh record
dalam sebuah cincin dapat menunjuk kembali ataupun ke langkah seterusnya
melalui penggunaan dan penyimpanan field tambahan. Dalam sebuah multiple-
ring-structur, beberapa cincin melewati record-record individual.
Mendesain dan menyimpan struktur-struktur merupakan sesuatu yang
kompleks, dan penunjuk-penunjuk biasanya membutuhkan tambahan ruang
disket. Dan proses pemabaruan (updating) penunjuk diperlukan setiap waktu
manakala sebuah record ditambahkan atau dihapus. Namun demikian,
penggunaan penunjuk yang terkait dengan struktur hierarkis atau pohon
seringkali merupakan pendekatan yang berguna dalam permodelan data,
khusunya dalam kasus ketika record jarang ditambahkan atau dihapus.
Sistem hiperteks adalah sitem yang berbasis penunjuk (pointer-based
system) yang memungkinkan pengguna untuk menjelajahi database secara acak
dengan memilih beberapa kata atau objek kunci. Jaringan data semantik mirip
dengan hiperteks. Perbedaannya adalah record lintas hubungan pada jaringan
terbatas pada teks, sementara pada sistem hiperteks, lintas hubungan dapat
memasukkan objek multimedia seperti foto dan bentuk grafis lainnya.
c. Model Data Relasional
Model relasional memandang database sebagai sebuah kumpulan tabel
dua dimensi daripada sebuah struktur jenis hierarkis atau jaringan. Dengan
menggunakan kembali variable-length record PART yang telah digunakan
sebelumnya.

PART ( PART_NO, PNAME, TYPE, COST, PVEND#1, WARHSE#1, LOC#1,


PVEND#2, WARHSE#2, LOC#2
... ... ...
PVEND#n, WARHSE#n, LOC#n)
Record ini dapat disusun dalam segmen sebagai berikut:
PART ( PART_NO, PNAME, TYPE, COST )
SUPPLIER ( PART NO, PVEND )
LOCATION ( PART NO, WARHSE, LOC )
Dapat dilihat baha, dapat diasumsikan PART_NO, PVEND, dan
WARHSE adalah field kunci (key field). Kita juga menambahkan PART_NO
pada segmen SUPPLIER dan LOCATION sehingga memungkinkan untuk
mengidentifikasi pemasok dan lokasi penyimpanan untuk setiap produk.
Data (kejadian) untuk masing-masing dari ketiga segmen tersebut dapat
disimpan dalam sebuah tabel seperti gambar diatas. Esensi model relasional
adalah merepresentasikan segmen-segmen dalam tabel. Keunggulan struktur data
ini dibandingkan pohon dan jaringan adalah penunjuk atau daftar tidak rumit. Dan
setiap informasi yang dapat diekstrak dari struktur pohon atau jaringan dapat pula
diekstrak dari tabel relasional. Segingga, model relasional merupakan struktur
data paling populer dalam lingkungan bisnis saat ini. Namun, model ini kurang
efisien dibandingkan model pohon dan jaringan ketika database jarang diperbarui
dan hubungan antar kode tidak dapat ditentukan dengan jelas.
Informasi dapat diekstrak dari tabel dengan menggunakan aljabar
relasional, yang dapat diringkas dalam tiga operasi dasar yaitu:

OPERASI FUNGSI
Selection Menciptakan sebuah tabel baru dari baris yang dipilih dalam
tabel yang tersedia. Baris dipilih berdasarkan nilai data
mereka.
Join Menciptakan sebuah tabel baru dari baris yang dipilih dalam
dua tabel yang tersedia. Baris dipilih berdasarkan nilai data
mereka.
Projection Menciptakan sebuah tabel baru dengan menghapus kolom dari
tabel yang tersedia.

Aturan-aturan tertentu yang disebut bentuk normal menentukan


pembuatan sebuah tabel. Proses penerapan aturan-aturan tersebut disebut
normalisasi. Tabel yang dapat memenuhi aturan-aturan ini dikatakan
ternormalisasi. Tabel yang tidak memenuhi aturan-aturan tersebut dikatakan tidak
ternormalisasi. Normalisasi menjadi penting karena tanpa hal tersebut, proses
pembaruan entri-entri dalam tabel dapat menyebabkan permasalahan. Tujuan
utama normalisasi adalah untuk menghapus proses duplikasi yang tidak perlu.

Langkah pertama dalam normalisasi adalah menciptakan sebuah tabel


terpisah untuk setiap repeated group. Ada tiga bentuk normal, yaitu:

BENTUK ATURAN
NORMAL
Bentuk normal Mebagi tabel-tabel untuk menghapus repeated group.
pertama
Bentuk normal Membagi tabel-tabel sehingga tidak ada kunci yang
kedua menentukan nilai dari sebuah field non kunci.
Bentuk normal Membagi tabel-tabel sehingga tidak ada field non kunci yang
ketiga menentukan nilai-nilai dari field non kunci lainnya.

Akhirnya, kita dapat melihat bahwa dalam terminologi database


relasional, istilah relasi adalah sinonim dengan tabel, dan tuple merujuk pada
sebuah baris dalam tabel.
3. Arsitektur Database pada Tingkat Fisik
Pembahasan arsitektur database tingkat fisik akan fokus pada ketiga metode akses file
yaitu sekuensial, indeks, dan langsung. DASD mampu mendukung seluruh metode tersebut,
dan pilihan yang terbaik dari ketiganya tergantung pada aplikasi.

a. File Akses Sekunsial


Pada sebuah file akses sekuensial, record hanya dapat diakses dalam sekuens mereka
sebelumnya. Sekuens sebelumnya biasanya adalah sebuah hasil dari record yang telah
diurutkan oleh beberapa kunci record. Pengorganisasian file sekuensial tidak menjadi sarana
yang bermanfaat jika record yang perlu diakses hanya sedikit, padahal file berisi banyak
record. File sekuensial bermanfaat dalam pemrosesan bentuk batch, yang biasanya
mengakses seluruh record dalam sebuah file. Prosedur yang biasanya dilakukan adalah,
pertama mengurutkan transaksi dan file utama dalam kunci yang sama. Aplikasi ini dapat
memperbarui piutang dagang pelanggan (dalam file master) untuk mencerminkan
pembayaran yang diterima (dalam transaksi). Pertama, program akan mengurutkan kedua file
dengan urutan kecil-besar berdasarkan nomor rekening. Kemudian, program membaca
sebuah record dari setiap file. Jika nomor rekening dari kedua record tersebut cocok satu
sama lain, maka informasi pada record pembayaran digunakan untuk memperbarui field
neraca pada record piutang dagang. Proses pembaruan record seperti ini kemudian dituliskan
dalam sebuah file master yang baru. Prosedur ini berlanjut sesuai dengan logika dalam
gambar dibawah ini sampai dengan seluruh record di kedua file tersebut di proses.

1
1. Baca record transaksi
(TR)
2. Baca record master 2
(MR)
3. Bandingkan nilai kunci TR (kunci)
TR (kunci) < MR (kunci) MR (kunci) 4
3
record
4. Tuliskan record TR (kunci) = MR (kunci)
7
masterke file master Ya
5
5. Akhir dari ujian file
6. Mutakhirkan dan Tidak
tuliskanrecord master
8 6
ke file master baru
7. Tuliskan record
kesalahanke file
9
kesalahan
8. Baca record transaksi
9. Akhir dari pemrosesan

Kesimpulannya, organisasi file sekuensial berguna ketika pemrosesan dalam bentuk batch
diperlukan. Pemorsesan dalam bentuk batch umumnya membutuhkan pengurutan dan
pemorsesan seluruh record baik file transaksi maupun file master. Dalam kasus di mana
hanya sejumlah kecil proporsi record yang dibutuhkan untuk diakses, salah satu metode akses
file berikut ini akan lebih efisien.
b. File Berindeks
Setiap atribut dapat diekstrak dari record dalam sebuah file primer dan digunakan
untukmembangun sebuah file baru yang bertujuan menyediakan sebuah indeks untuk file
aslinya. Bentuk file seperti ini disebut file berindeks atau file terinversi. Sebuah file dikatakan
terinversi penuh bila terdapat indeks di setiap field-nya. Waktu pemrosesan yang dibutuhkan
untuk menyimpan sebuah file yang terisi penuh dapat menjadi lama karena indeks-indeks
yang ada harus senantiasa diperbarui kapan saja record ditambah, dihapus, atau dimodifikasi.
Lebih lanjut, setiap indeks memerlukan tambahan penyimpanan disket, dan disket yang
dibuat dapat berakhir dengan kebutuhan ruang penyimpanan yang lebih besar daripada file
data tersebut.

Gambar contoh penggunan indeks file


c. File Sekuensial Berindeks
File sekuensial berindeks adalah sebuah file sekuensial yang disimpan dalam sebuah
DASD dan diberi indeks serta disimpan secara fisik dalam field yang sama. File-file tersebut
biasa disebut ISAM, yaitu singkatan dari indexed-sequnetial access method. ISAM
merupakan kompromi antara organisasi file sekuensial dan akses langsung, yang
menyediakan kedua kemampuan tersebut dengan biaya yang sesuai.
Pemrosesan dan inkuiri merupakan tujuan ISAM. Pemrosesan sebuah batch record
dapat dilakukan secara sekuens, sementara inkuiri individual pada sebuah file dapat
dilakukan dengan menggunakan indeks. Makin detail sebuah indeks, makin cepat akses yang
dilakukan; sebuah imbal balik dalam penyimpanan indeks.
d. Struktur File ISAM
Secara struktural terdiri atas tiga daerah yang berbeda yaitu:
1. Indeks
Indeks merupakan sebuah peta yang menghubungkan record field-field kunci dengan
tempat penyimpanannya di bidang utama. Tiap entri dalam indeks memberikan
rentang field-field kunci pada sebuah track tertentu dari disk tempat file tersebut
disimpan. Dengan mencari indeksnya, sebuah program akan dapat menempatkan trak
yang berisi record sesuai keinginan. Walaupun track ini harus dicari secara
sekuensial, pencarian ini berlangsung sangat cepat.
2. Bidang Utama
Bidang Utama (prime area) adalah bagian dalam disket tempat record aktual ditulis.
3. Bidang overflow
Bidang overflow adalah bagian terpisah dalam disket yang dialokasikan untuk file
guna memungkinkan adanya penambahan tanpa pemrosesan lebih lanjut terhadap
file awal. Bidang ini pada dasarnya kosong. Ketika sebuah record baru ditambahkan
ke dalam file, record tersebut ditempatkan dalam posisinya di bidang utama untuk
menjaga pengorganisasian sekuensial dari file tersebut. Record-record yang berada
dalam bidang utama harus dipampatkan (bumped) guna memberi ruang bagi record
yang baru. Jika tersedia cukup ruang dalam track tempat record harus dimasukkan dan
record lain dalam track tersebut akan dipindahkan. Dalam hal ini, record yang
dimampatkan dipindah ke bidang overflow. Namun demikian, record yang berada di
bidang overflow masih dapat diakses dalam sekuens kuncinya dengan menggunakan
indeks karena secara fisik kunci sekuensnya tidak berada di bidang overflow. Jika
record tersebut tidak ditemukan dalam track yang ditunjukkan dalm indeks, bidang
overflow akan diperiksa secara sekuensial sampai record tersebut ditemukan. Hal ini
akan memperpanjang waktu yang diperlukan untuk memproses sebuah file ISAM.
Oleh karena itu sebuah file ISAM harus secara berkala direorganisasi untuk dapat
mengakses dengan lebih efisien. Reorganisasi terdiri atas menggabung dan mengatur
seluruh record sehingga file tersebut dapat diurutkan secara sekuensial di bidang
utama.

Struktur file ISAM


e. File Akses Langsung
File akses langsung memungkinkan record secara individual dimunculkan dengan
segera tanpa menggunakan indeks. Hal ini dilakukan dengan menempatkan tiap record
dengan lokasi penyimpanan yang menyediakan hubungan dengan nilai record kunci. Oleh
karena itu, dengan metode akses langsung, satu hal yang dibutuhkan untuk menempatkan
sebuah record hanyalah nilai kuncinya.Beberapa metode penempatan yang dapat digunakan
untuk menyimpan dan menempatkan record dalam file akses-langsung. Salah satu metode
adalah Menempatkan field record kunci langsung dengan skema pengkodean yang digunakan
oleh komputer itu sendiri untuk mngidentifikasi alamat fisiknya dalam sebuah DASD.Metode
terkait (related method) yang digunakan untuk menyimpan alamat fisik media simpan sebagai
sebuah field dalam sebuah file record. Kedua metode tersebut tidak membutuhkan konversi
kunci untuk mengakses. Namun demikian, mereka tidak digunakan secara luas karena alamat
lokasi penyimpanan jarang yang cocok dengan pengidentifikasi record, dan masalah
keamanan dan menejemen sistem sering diasosiasikan dengan kondisi bahwa pengguna
mengetahui lokasi penyimpanan file aktual.Kebanyakan sistem file akses-langsung
mengubah sebuah kunci kedalam alamat lokasi penyimpanan dengan menggunakan entah
sebuah indeks (tabel) atau transformasi acak. Ini berarti dimungkinkan untuk mengakses
setiap record dalam disket dengan sama cepatnya dengan yang diberikan oleh nilai kuncinya.
Nilai kunci dikonversi ke dalam sebuah disket alamat dan record diakses langsung tanpa
perlu mencari lagi.

Gambar contoh penggunaan metode akses langsung


Transformasi acak digunakan secara luas sebagai metode penyimpanan dan
penempatan record dalam sebuah file akses-langsung. Ada empat record yang berbeda dalam
file tersebut; sebaliknya, tiap kunci record digunakan dalam perhitungan matematis. Sekali
sebuah file dimuati oleh record-record tersebut, setiap record dapat diakses secara langsung
dengan melewati kunci yang ada melalui perhitungan acak untuk menentukan alamatnya:
media kemudian mengakses record tertentu ini secara langsung, dengan melewati record
lainnya dalam file tersebut.
Gambar Penggunaan file akses langsung
4. Aspek Ekonomis pada Teknik Pengorganisasian File
Pertimbangan ekonomis paling mendasar dalam pemrosesan file ditentukan
sepenuhnya oleh rasio aktivitas yang diakses dibagi dengan jumlah record dalam suatu file
dan waktu respons yang diinginkan untuk pemrosesan dan penempatan.
Teknik-teknik Waktu terbaik untuk Keterbatasan
pengorganisasian file menggunakannya

Sekuensial Rasio aktivitas tinggi, seperti Tidak memungkinkan


dalam pemrosesan batch untuk mengakses
secepat record tunggal

Indeks Rasio aktivitas rendah untuk Pembaharuan file


ukuran file menengah sampai membutuhkan indeks
besar

Indeks-sekuensial File perlu diproses dalam Sama seperti halnya


batch(rasio aktivitas tinggi) indeks dan sekuensial
dan nonbatch (rasio aktivitas
rendah)

Langsung Rasio aktivitas rendah, file-file Butuh kunci untuk


berukuran besar, jaringan dan menempatkan record.
pohon
Gambar 1 Membandingkan rata-rata biaya per transaksi yang diproses untuk ketiga
teknik tersebut untuk sebuah rentang rasio aktivitas tertentu. Pengorganisasian sekuensial
merupakan pendekatan yang memiliki biaya tetap untuk memproses file, berbeda dengan
pengorganisasian akses-langsung yang merupakan pendekatan bersifat variable. Dalam
akses-langsung, biaya pemrosesan setiap record sebanding dengan jumlah record yang
diproses ,berapapun jumlah record yang diproses. Dalam pemrosesan sekuensial, total biaya
tetapnya cukup besar namun seiring peningkatan jumlah record yang diproses, biaya pun
semakin tersebar luas dan dan pada akhirnya biaya per transaksi menurun dengan cepat.
ISAM menawarkan pendekatan yang berada di kedua titik tersebut: untuk aktivitas berskala
rendah, record dapat diakses dengan menggunakan indeks, sedangkan untuk aktivitas
berskala tinggi, pendekatan indeks tidak digunakan, namun sebaliknya file diproses secara
sekuensial. Baik untuk aktivitas berskala tinggi maupun rendah, ISAM kurang menarik
disbanding pemrosesan langsung atau sekuensial, namun untuk sebuah file yang memerlukan
aktivitas tinggi dan rendah, ISAM menawarkan keunggulan ekonomis disbanding keuda
metode yang ada.
Pertimbangan ekonomis kedua adalah yang berhubungan dengan waktu. Berkaitan
dengan database, waktu respon adalah lama waktu yang harus dihabiskan oleh pengguna
untuk menyelesaikan sebuah operasi, misal sebuah query. File-file akses-langsung
dibutuhkan untuk waktu respon yang sangat cepat karena waktu respon yang lebih lama dapat
ditangani dengan lebih ekonomis dengan menggunakan file-file yang bersifat sekuensial.
Ketika lama waktu respon dapat ditoleransi, pembaharuan query atau file dapat disatukan
dengan operasi pemrosesan batch. Sebagai contoh, salinan record pelanggan dapat diperoleh
melalui proses posting tagihan berdasarkan produk ke dalam file piutang dagang. ISAM
sekali lagi menawarkan situasi yang berada di keuda metode tersebut. Karena permintaan-
permintaan dengan waktu respons yang pendek dapat diproses melalui indeks, dan
permintaan dengan waktu respons yang lebih lama dapat dilakukan pada pemrosesan
sekuensial terhadap file yang diinginkan. Waktu respons juga dipengaruhi oleh pertimbangan
perangkat keras yang akan didiskusikan dibawah ini.
5. Arsitektur Fisik, Perangkat Keras dan Waktu Respons
Waktu respon dapat menjadi sebuah permasalahan besar pada database besar yang
mungkin diakses oleh ratusan atau bahkan ribuan pengguna pada saat yang sama. Jika sistem
database dan perangkat keras komputer tidak sesuai dengan permintaan, maka pengguna akan
menunggu dengan sia-sia dalam waktu yang lama untuk query mereka. Oleh karena itu,
sistem database harus didesain dengan baik bagi penggunanya, dan perangkat keras harus
cukup cepat untuk mengerjakan semua pekerjaan yang diminta.
Pada sisi perangkat keras, waktu respon dipengaruhi oleh waktu akses fisik yaitu
waktu yang dibutuhkan oleh CPU untuk memunculkan sebuah blok data tunggal dari disket
yang disebut Disk Access Time. Salah satu masalahnya adalah CPU beroperasi jauh lebih
cepat dari yang dilakukan disket sehingga CPU harus menunggu sesaat sementara operasi
input/output disket sedang dijalankan. Hal ini berarti bila mampu meminimalisasi input dan
output disket, dalam beberapa kasus dapat meningkatkan waktu respons yang cukup tinggi.
Faktor lainnya yang dapat mempengaruhi waktu respons adalah bagaimana record data
dapat didistribusikan secara fisik dalam disket. Jika sebuah kelompok record akan diakses
secara sekuens, maka waktu respon akan lebih cepat jika record-record tersebut secara fisik
letaknya sangat berdekatan dalam disket. Jika record-record tersebut berdekatan, maka proses
membaca / menulis di atas disk drive hanya membutuhkan sedikit jarak setiap kali record
berikutnya diakses. Sebaliknya jika record-record tersebar luas, maka proses membaca/
menulis di atas disk drive akan relative membutuhkan jarak yang cukup jauh untuk
mengakses record yang baru,dan tentunya akan membuat lambat.
Pada hardisk data yang berada di track atau silinder yang sama dapat diakses tanpa
perlu berpindah ketika membaca/menulis di atasnya. Hal ini berarti dalam beberapa kasus
dimunkinkan untuk meningkatkan kecepatan sebuah aplikasi database dengan menyimpan
record-record dalam sebuah file data secara berdekatan di satu atau lebih silinder disket.
Harus ditekankan juga bahwa banyak sistem database bergantung pada rutinitas
sistem pengoperasian untuk operasi input/output mereka. Ini berarti sistem pengoperasian
menetukan di mana data akan ditempatkan dalam disket. Hal ini penting karena banyak
sistem operasi tidak mempunyai provisi untuk memastikan bahwa data akan disimpan secara
berdekatan. Kenyataannya, banyak sistem pengoperasian akan dengan sengaja memecah file-
file dan menyebarkannya ke seluruh disket, menempatkan bagian-bagian mereka ke dalaam
ruang-ruang kecil yang kosong sehingga seluruh bagian dalam disket digunakan dan tidak
terbuang percuma.
Kebutuhan untuk menyimpan sebuah file secara berdekatan tergantung pada arsitektur
fisik database dan berkaitan dengan metode akses filenya. Jika database menggunakan
metode akses sekuensial, maka penempatan setiap record secara fisik berdekatan sama lain
dalam disket tentunya sesuatu yang diinginkan. Akan tetapi untuk metode akses-berindeks,
selalu perlu untuk menempatkan indeks-indeks dalam penyimpanan yang berdekatan karena
file-file tersebut sering dibaca secara sekuens dan secara keseluruhan pada saat yang
bersamaan. Namun demikian mungkin tidak perlu menempatkan record dalam file data yang
terkait sedekat mungkin satu sama lain dalam disket karena record file tersebut diakses secara
acak dalam dua tahap proses pencarian.

12. 3 Sistem manajemen database dan database dalam praktiknya


Apa yang dilakukan sistem manajemen database
Sistem manajemen database (DBMS) adalah program computer yang memampukan
seorang pengguna untuk menciptakan dan memperbarui file-file, menyeleksi dan
memunculkan kembali data, dan menghasilkan beragam output dan laporan-laporan. Seluruh
DBMS memiliki tiga atribut umum berikut ini untuk mengelola dan mengorganisasi data.

Data description language (DDL)


DDL memungkinkan administrator database (DBA) untuk menentukan struktur logika
database yang disebut skema. Pada umumnya hal-hal berikut ini perlu ditentukan ketika
menentukan skema.
1. Nama elemen data
2. Jenis data ( numeric, alfabetik, tanggal, dan lain-lain ) dan posisi jumlah angka
desimal jika data tersebut bersifat numeric
3. Posisi angka (misalnya Sembilan posisi untuk nomor jaminan sosial)

DDL juga dapat digunakan untuk menentukan subskema yaitu jumlah pengguna
individual database. Sebagai contoh, departemen pemrosesan pesanan penjualan dapat
melihat dan mengedit elemen-elemen data DATE, CUSTOMER_NAME,
ACCOUNT_NUMBER, dan SCHEDULED_DATE_OF_COMPLETION dan departemen
produksi tidak punya akses untuk mengedit CUSTOMER_NAME dan
ACCOUNT_NUMBER. Dapat dilihat dalam contoh ini program aplikasi ( misal sistem
akuntansi ) secara otomatis menghasilkan laporan DDL yang diperlukan untuk membuat
subskema. DDL juga dapat digunakan untuk menciptakan, memodifikasi dan menghapus
table-tabel dalam pengatiran relasional.

Data manipulation language (DML)


DML terdiri atas perintah-perintah untuk melakukan pembaruan (updateing), pengeditan,
manipulasi dan ekstrasi data. Dalam banyak kasus pengguna tidak perlu tahu atau
menggunakan DML. Namun demikian program aplikasi ( seperti program pembayaran gaji
atau sistem akuntansi interaktif ) secara sistematis menghasilkan laporan DML untuk
memenuhi permintaan pengguna. Structured Query Language ( SQL ) adalah dalam bentuk
DML yang umumnya dalam pengaturan relasional.

Data Query Language ( DQL )


DQL adalah bahasa atau antarmuka yang ramah pengguna ( user-friendly ) yang
memungkinkan bagi pengguna untuk meminta informasi dari database. Salah satu antarmuka
yang friendly ini adalah QBE ( Query by example ) yang memungkinkan bagi pengguna
untuk meminta informasi hanya dengan mengisi tempat-temmpat yang kosong. Sebagai
contoh, seorang pengguna dapat mengisi tempat yang kosong dalam sebuah formulir seperti
tampak pada gambar dibawah ini untuk meminta sebuah recordd rekening neraca yang lebih
besar dari $1000.

Nama Nomor rekening Neraca rekening


>1000
Gambar memilih rekening >$1000 dengan menggunakan QBE

SQL Data Manipulation Language


SQL adalah teknologi yang digunakan untuk memunculkan informasi dari database. SQL
merupakan bahasa pemrograman nonprocedural. Bahasa ini memungkinkan penggunanya
untuk fokus pada menentukan data apa yang dibutuhkan ketimbang pada bagimana
mendapatkan data tersebut. Empat bentuk pernyataan DML yang merupakan komponen SQL
adalah

1. SELECT memunculkan baris tabel


2. UPDATE memodifikasi baris tabel
3. DELETE memindahkan baris dari tabel
4. INSER menambahkan baris baru pada tabel

Queri SELECT
SELECT adalah kalimat pertama dalam pernyataan SQL yang dimaksudkan untuk
mengekstrak data dari sebuah database. SELECT menentukan field-field mana saja (misalnya
item-item dalam sebuah database) atau ekspresi-ekspresi dalam field yang ingin ditampilkan.
SELECT Everything tanda * adalah karakter queri khusus yang mencerminkan “seluruh
field”. Query ini memilih seluruh field dari tabel kata kunci.
SELECT * FROM kata kunci

SELECT (memilih) field tertentu (misal item) berdasarkan nama. Jika ingin memasukan
lebih dari satu item, pisahkan item-item tersebut dengan koma. Urutkan item-item yang
dimunculkan.
SELECT nama, negara, mata uang FROM perusahaan

ORDER BY mengurutkan tampilan data dalam urutan tertentu berdasarkan klausa. ORDER
BY adalah opsional, jika tidak dimasukannya maka data yang muncul tidak akan berurutan.
Default urutan yang digunakan adalah dari keci-besar (A-Z, 0-9 )

WHERE Condition dapat digunakan untuk menentukan record mana saja dari tabel yang
tercantum dalam klausa FROM yang akan muncul dalam hasil pernyataan SELECT. WHERE
adalah opsional, namun bila dimasukkan ia akan mengikuti FROM. Jika WWHERE tidak
dimasukkan maka seluruh record akan dipilih.

String Functions pernyatan SQL berikut ini mengilustrasikan sebuah pencarian kata. Kata
goodwill akan dicari dalam field notes. Topic.
SELECT * FROM notes

WHERE Instr(1, topic,”goodwill”)>0

Fungsi Instr akan mencari sebuah field khusus (“topic” dalam queri) untuk sebuah deret
(string) karakter tertentu yang ada dalam kutipan (“goodwill”) dengan mulai pada posisi
tertentu dalam field (1 mengindikasikan posisi pertama, awal dari string). Fungsi lainnya dari
string adalah

 Left$ ( string, length): string adalah ekspresi dari karakter paling kiri sedangkan
length adalah jumlah karakter untuk kembali.
 Right$ ( string, length ): string adalah ekspresi dari karakter paling kanan sedangkan
length adalah jumlah karakter untuk kembali.

Arithmetic Expression SQL memungkinkan ekspresi aritmatika untuk dimasukkan dalam


klausa SELECT. Ekspresi aritmatika terdiri dari sejumlah nama kolom dan nilai-nilai yang
terhubung dengan setiap operator berikut ini :

+ Tambah
- Kurang
* Kali
/ Bagi

Ketika dimasukkan dalam klausa SELECT, hasil sebuah ekspresi akan ditampilkan sebagai
sebuah kolom tabel perhitungan.
Operator pembanding, setiap operator pembanding berikut ini dapat digunakan :
= sama dengan
<> tidak sama dengan
> lebih besar dari
< lebih kecil dari
>= lebih besar sama dengan
<= lebih kecil sama dengan

Menyesuaikan sebuah nilai dalam sebuah daftar operator IN memungkinkan pemilihan baris
dengan sebuah nilai kolom yang sesuai dengan setiap nilai dalam sebuah rangkaian nilai.
SELECT * From company

WHERE company IN (“01”,”22”,”35”)

Ekspresi Majemuk dengan Operator Boolean


Ekspresi logika individu dapat dikombinasikan dalam sebuah klausa WHERE dengan
operator Boolean :

 AND
 OR

Fungsi Agregat
Fungsi COUNT (*) AS tally mengilustrasikan bagaimana menghitung jumlah occurrence
dalam sebuah hasil dan nama hasil (AS tally).

Klausa AS tally memberikan fungsi agregat dengan nama “tally” yang akan digunakan dalam
laporan. Klausa AS bersifat pilihan atau opsional dengan fungsi agregat. Untuk melihat
efeknya yaitu sebagai contoh : klik “New Report” pada formulir SQL, hapus bagian “AS
tally” dalam queri dan kemudian jalankan queri yang telah dimodifikasi. Adapun fungsi
tambahan tersebut antara lain :
AVG (column-name) memberikan hasil nilai rata-rata
MAX (column-name) memberikan hasil nilai tertinggi
MIN (column-name) memberikan hasil nilai terendah
SUM (column-name) menghitung total nilai

GROUP BY
GROUP BY mengombinasikan record-record dengan nilai-nilai identik dalam daftar
filed tertentu ke dalam sebuah record tunggal. Nilai ringkasan (summary value) dibuat untuk
setiap record jika memasukkan sebuah fungsi agregat, seperti SUM atau COUNT dalam
pernyataan SELECT. Jika pernyataan SQL memasukkan klausa WHERE, record akan
dikelompokkan setelah mengaplikasikan kondisi WHERE ke dalam record.

GROUP BY bersifat pilihan, namun ketika ia dimasukkan GROUP BY akan


mengikuti FROM dan WHERE. Nilai-nilai ringkasan akan dihilangkan bila tidak terdapat
fungsi agregat dalam pernyataan SELECT. Contoh berikut ini meringkas penghitungan
perusahaan berdasarkan negara:
SELECT company.country, count (company.country) AS tally FROM company
GROUP BY company.country

Inner Join
Inner Join mengombinasikan field-field dari beberapa tabel. Contoh berikut ini memasukkan
nama perusahaan untuk perusahaan 15 untuk setiap topiknya dalam tabel notes.
SELECT company.name, notes.topic
FROM company INNER JOIN notes
ON company.company = notes.company
WHERE company.company = “20”

Nested Queries
Seseorang dapat menentukan sebuah queri dalam klausa WHERE yang dijalankan sebelum
queri yang berada di luar menghasilkan satu atau lebih baris yang kemudian dibandingkan
dengan baris yang dihasilan oleh queri yang berada di luar. Contoh berikut ini menemukan
nama perusahaan yang memiliki kode SIC Max (yang paling besar).
SELECT name
FROM company
WHERE SIC = (SELECT MAC (SIC) FROM Company)
UPDATE, INSERT, dan DELETE Queri
Jenis queri ini digunakan untuk memodifikasi sebuah database. Pernyataan UPDATE terdiri
atas tiga klausa :
UPDATE tablename
SET column-assignment-list
WHERE conditional-expression

Dalam SET, column-assignment-list memasukkan kolom-kolom yang telah diperbarui dan


nilai-nilai yang di set dan mengambil bentuk kolom-nama1 = nilai1, kolom-nama2 = nilai2

Klausa WHERE bersifat pilihan. Bila digunakan, klausa WHERE menentukan sebuah
kondisi untuk UPDATE menguji kapan memproses setiap baris dalam tabel. Benttuk umum
pernyataan DELETE adalah :
DELETE FROM tablename
WHERE conditional-expression

Pernyataan DELETE menghapus baris-baris dari tablename yang memenuhi kondisi yang
ditentukan dalam klausa WHERE.

Pernyataan INSERT memiliki dua bentuk umum. Bentuk yang paling sederhana digunakan
untuk memasukkan sebuah baris tunggal dalam sebuah tabel yaitu :
INSERT INTO tablename
VALUES (constant-list)

Pernyataan INSERT juga dapat digunakan bersamaan dengan sebuah queri pernyataan
SELECT untuk menyalin baris suatu tabel ke tabel lainnya.

Perlunya Sistem Manajemen Database


DBMS mengintegrasikan, menstandarisasi dan menyediakan keamanan untuk beragam
aplikasi akuntansi. Bila tidak terdapat integrasi, tiap jenis aplikasi akuntansi seperti
penjualan, pembayaran gaji, dan piutang akan menyimpan terpisah file-file data independen
dan program komputer untuk mengelola file-file tersebut. Walaupun menyimpan file-file
independen adalah hal yang sederhana, terdapat beberapa kelemahan di dalamnya. Pertama,
item data yang sama dapat digunakan dalam beberapa bidang aplikasi yang berbeda dengan
file-file independen, item data harus dimasukkan ke dalam setiap file aplikasi. Kedua, karena
file harus dengan tegas ditentukan terlebih dahulu dalam proses implementasi sistem,
prosedur yang ada dapat menemui kendala dengan adanya struktur file yang ada saat ini
dibanding pengembangan kebutuhan aplikasi.

Independensi Data
Solusi untuk masalah penyimpanan file-file independen terletak pada pemisahan secara fisik
penanganan data dari penggunaan logis file-file tersebut. Hal ini menuntut dua perubahan
mendasar : pertama, penyimpanan data terintegrasi dalam sebuah database tunggal dan
kedua, seluruh akses untuk file (database) yang terintegrasi ini dilakukan melalui suatu sistem
perangkat lunak tunggal yang didesain untuk mengelola aspek-aspek fisik penanganan dan
penyimpanan data.

Keamanan
Keunggulan DBMS lainnya adalah kemampuan memberikan kode keamanan untuk item data
dan atribut-atribut pemrosesannya. Salah satu bagian file kamus data berisi sebuah daftar
pengguna sistem terotorisasi dan kode akses serta keamanan. Masing-masing elemen data
unik yang dapat berupa kode prioritas numerik. Kode-kode tersebut akan menentukan item
data yang akan dimunculkan oleh pengguna DBMS dan kode-kode tersebut dapat juga untuk
membatasi dan menentukan pemrosesan yang dapat digunakan oleh pengguna untuk setiap
item data.

Dokumentasi dan Administrasi Database


Kamus database digunakan baik terpisah maupun dengan DBMS untuk mensentarlisasi,
mendokumentasi, mengontrol dan mengoordinasi penggunaan data dalam sebuah organisasi.
Kamus data merupakan sebuah urutan file yang memiliki catatan occurrence yang berisi
deskripsi item data. Sebuah alias muncul ketika para pengguna yang berbeda menggunakan
filed yang sama, namun memiliki nama yang berbeda. Sebagai contoh, sebuah gudang dapat
dipanggil “Requisition Number”, sementara item data yang sama dipanggil oleh penjualan
dengan nama “Order Number”. Alias juga muncul disebabkan item data yang sama disebut
sebagai hal yang berbeda oleh program-program yang berbeda, dalam bahasa yang berbeda,
oleh para pembuat program yang berbeda pula. Pengkodean (encoding) merujuk kepada
bentuk fisik item data yang akan disimpan dalam BCD atau EBCDIC. Pemilik (owner)
merujuk kepada pengguna yang memiliki tanggung jawab akhir atau kepentingan utama
berkenaan dengan integritas occurrence sebuah item data.
Item-item pada data dictionary occurrence :
Spesifikasi

 Nama
 Definisi
 Alias

Karakteristik
 Ukuran
 Rentang nilai
 Pengkodean
 Editing data

Utilisasi

 Pemilik
 Dimana digunakan
 Kode keamanan
 Diperbarui

Tujuan utama sebuah kamus data adalah mengurangi atau paling tidak mengawasi
inkonsistensi penggunaan yang dihasilkan dari pemrosesan alias dan mengurangi kelebihan
data sejumlah mungkin. Tanggung jawab untuk kamus data harus disentralisasikan pada
seorang administrator database (DBA). Administasi database bertanggung jawab
menanggulangi ketidak-cocokan dan masalah koordinasi dan komunikasi antara kelompok-
kelompok pengguna ketika memakai bersama sebuah database. Tugas utama DBA adalah
menetapkan standar, konvensi dan dokumentasi sumber-sumber data. Administrasi kamus
data merupakan alat utama yang digunakan DBA untuk melaksanakan tugas tersebut.

Kamus data dapat dikelola secara manual, namun biasanya ia terkomputerisasi dan
diproses seperti halnya file-file komputer lainnya. Jika kamus digunakan bersama-sama
dengan sebuah DBMS, ia akan disimpan dalam DBMS. Di kasus yang lain, kamus data
adalah prosedur tentang penggunaan kamus dan juga berfungsi sebagai kamus bagi dirinya
sendiri yang membuat hal tersebut merupakan elemen penting dalam administrasi database.
DAFTAR REFERENSI

Bodnar, George H. Dan William S. Hopwood. 2008. Sistem Informasi Akuntansi Edisi 9.
Yogyakarta: Penerbit Andi.

Anda mungkin juga menyukai