Perangkat Lunak Basis Data
Sebagaimana perkembangan teknologi informasi pada umumnya perkembangan teknologi basis data juga berjalan dengan pesat. Perkembangan basisdata banyak dijumpai pada perkembangan fitur-fitur (features) perangkat lunak manajemen basis data. Namun demikian apabila ditinjau dari sudut perancangan basisdata
maka perkembangan yang terjadi tidak terlalu signifikan. Tatacara
merancang basisdata tidak banyak berubah dari dulu hingga sekarang,
terkecuali pada teknik visualisasi antarmuka (user interface) dan
perancangan berbasis objek.
Perangkat lunak DMBS
yang cukup luas digunakan pada tahun 1980-an hingga tahun 1990-an
khusus-nya pada komputer mikro adalah dBASE III+ dan FoxBase, dimana model data yang digunakan adalah model relasional. Sedang untuk komputer mini dan juga mainframe, pada umumnya digunakan bahasa pemrograman
tingkat tinggi seperti COBOL, FORTRAN, dan PL/I untuk melakukan akses
ke basisdata (embedded database access) yang difasilitasi dengan DBMS
seperti IMS (model hirarki), IDS (model jaringan), dan DB2 (model
relasional). Ketika teknologi jaringan lokal (LAN)
digunakan, mula-mula diperkenalkan oleh Novell, maka dBASE III+ semakin
luas digunakan, beberapa perusahaan perangkat lunak menciptakan
software pembangunan sistem database (database system development tools)
seperti Clipper dan FoxPro.Pada komputer besar DBMS juga turut
berkembang dengan munculnya perangkat lunak seperti SDK Ingres dan
Oracle.
Menjelang tahun 2000 aplikasi berbasis objek mulai berkembang
sehingga turut mempengaruhi perangkat lunak DBMS, dimulai dengan
munculnya Visual dBASE, kemudian Visual FoxPro, lalu Delphi. Pencipta
Delphi malah menyediakan fasilitas akses keberbagai format file
basisdata sehingga dapat digunakan untuk menciptakan software aplikasi
yang melakukan pengolahan data dari file-file database.
Berdasarkan orientasi pemakaiannya perangkat lunak basisdata dapat
dikelompokkan dalam dua kategori: Perangkat lunak ber-orientasi untuk
pemakai terbatas, dan perangkat lunak ber-orientasi untuk pemakai yang
banyak.
Perangkat Lunak ber-orientasi untuk pemakai terbatas.
Perangkat Lunak pada kategori ini umumnya digunakan pada komputer mikro
(PC). Perangkat lunak jenis ini pada umumnya mudah di-instalasi dan juga
relatif mudah digunakan. Beberapa contoh perangkat lunaknya adalah :
MS-Access, dBase/Clipper, FoxPro, dan Borland-Paradox. Perangkat lunak
inipun berkembang terutama pada beberapa aspek berikut ini:
- Tipe data yang pada awalnya hanya character, numeric, dan date, diperluas ke image, sound, video, data OLE, dsb.
- Jika pada awalnya struktur basisdata hanya terdiri atas nama-field, tipe, dan ukurannya, kini fitur baru pada field-data diperkenalkan seperti nilai default, pilihan field boleh kosong atau tidak, dan bentuk validasi dari suatu field-data.
- Berbagai utilitas juga dikembangkan seperti pembuatan query, report generator, perancangan user-interface, dan sebagainya.
Kelemahan yang mungkin ditemukan pada kategori perangkat lunak ini
adalah “keamanan data”, karena pada awalnya orientasi-nya hanya satu
pengguna maka fitur pengamanan kurang dikembangkan. Sebagai contoh
file-file basisdata diperlakukan sama dengan file lainnya, terbuka dan
mudah diakses hanya melalui direktorinya.
Perangkat Lunak ber-orientasi untuk banyak pengguna.
Perangkat lunak pada kategori ini memisahkan fungsi pengelolaan
basisdata dengan fungsi pembangunan aplikasi sehingga “keamanan data”
lebih terjamin. File-file database tidak bisa diakses oleh orang yang
tidak diberi hak, sehingga aplikasi harus melakukan “koneksi” ke
database sebelum akses data, apabila diberi izin barulah aplikasi ini
dapat melakukan permintaan data. Perangkat lunak pada kategori ini telah
dirancang untuk digunakan dalam jaringan komputer, jadi dapat diakses
oleh banyak orang. Selain itu perangkat lunak pada kelompok ini
menangani berbagai aspek-aspek pengelolaan basisdata, antara lain:
- Penanganan pemulihan data (data recovery) ketika terjadi kegagalan dalam operasi basisdata.
- Pembuatan data cadangan (data backup) baik secara insidental maupun secara periodik, baik secara statis (ketika pemakaian basisdata tidak aktif) maupun secara dinamis (ketika pemakaian basisdata sedang aktif).
- Pengendalian aspek-aspek pemakaian bersama (concurency) sehingga tidak terjadi kekacauan, misalnya tidak boleh dua pengguna meng-update data pada detik yang bersamaan, harus ditentukan siapa yang lebih dulu.
- Optimalisasi pengerjaan query (query processing) agar aplikasi database dapat meningkat kinerjanya.
- Optimalisasi pemanfaatan sumber daya seperti memory, hard-disk, processor, dan sebagainya, terutama bila tersedia sumberdaya paralel.
Beberapa perangkat lunak yang masuk dalam kategori ini adalah:
Oracle, Borland-Interbase, MS-SQL Server, CA-OpenIngres, Sybase,
Informix, dan IBM-DB2.
Perangkat lunak basisdata pada umumnya menyediakan bahasa basisdata
yang terdiri atas DDL (Data Definition Language), DML (Data Manipulation
Language), dan DCML (Device Control Media Language), walau demikian
implementasi bahasa ini berbeda, formatnya tergantung pada model data
yang didukungnya, serta selera para penciptanya. Berikut ini disajikan
beberapa contoh bahasa basisdata dari beberapa jenis perangkat lunak.
Bahasa xBase
Pada tahun 1980-an, Ashton-Tate memasarkan produk DBMS yang diberi
nama dBase untuk komputer mikro, dengan demikian perusahaan kecil yang
tidak mampu membeli komputer besar pada saat ini mempunyai kesempatan
untuk membangun basisdata perusahaannya. Produk dBase sukses di pasaran
sehingga banyak perusahaan lain yang menciptakan tiruan dBase, misalnya
FoxBase yang kemudian menjadi FoxPro. Pada awal tahun 1990-an,
Ashton-Tate kemudian melakukan tuntutan ke pengadilan akan haknya atas
bahasa dBase, sayang sekali Ashton-Tate kemudian kalah, karena pada
awalnya dBase ternyata diciptakan untuk keperluan badan ruang angkasa
NASA, sehingga hak ciptanya telah berada ditangan pemerintah Amerika
Serikat. Akhirnya pengadilan memutuskan bahwa dBase bukan milik
Ashton-Tate dan sebaiknya dinamakan saja xBase.Berbagai
bahasa DBMS dewasa ini masih memiliki kesamaan dengan xBase seperti
dBase IV, FoxPro, Clipper, Visual dBase, Visual FoxPro, dsb. Berikut
ini contoh program yang ditulis dengan dBase versi DOS.
******** contoh program xBase **********
SET ECHO OFF && baris program tidak ditampilkan
SET TALK OFF && hasil instruksi tidak tampil
SET COLOR TO +W/N && setting warna layar monitor
DO WHILE .T. && melakukan perulangan
CLEAR && bersihkan monitor
@ 8,30 SAY “M E N U U T A M A” && menampilkan menu
@12,30 SAY “ (T)ambah data “ && ketik T untuk tambah data
@14,30 SAY “ (E)dit data” && ketik E untuk edit data
@16,30 SAY “ (P)rint data” && ketik P untuk cetak data
@18,30 SAY “ e(X)it program” && ketik X untuk keluar
STORE “X” TO ANSWER && beri X pada variabel ANSWER
@20,37 GET ANSWER && minta jawaban
READ && baca keyboard
DO CASE && memilih kasus jawaban
CASE UPPER(ANSWER)=”T” && bila jawaban = T
USE CLIENTS && buka file CLIENTS
APPEND && lakukan tambah data
CLOSE DATABASE && tutup file
CASE UPPER(ANSWER)=”E” && bila jawaban = E
USE CLIENTS && buka file CLIENTS
EDIT && lakukan edit data
CLOSE DATABASE && tutup file
CASE UPPER(ANSWER)=”P” && bila jawaban = P
USE CLIENTS && buka file CLIENTS
LIST TO PRINT && cetak data ke printer
EJECT && pindah ke halaman baru
CLOSE DATABASE && tutup file
CASE UPPER(ANSWER)=”X” && bila jawaban = X
QUIT && keluar dari program
ENDCASE && akhir seleksi kasus
ENDDO && akhir perulangan
******************************************************************
Bahasa Paradox Application Language (PAL)
Seperti juga xBase bahasa PAL menyediakan fasilitas yang memudahkan
pengguna dalam mengelola basisdata. PAL bergantung pada mesin Paradox,
namun berbeda dengan xBase yang juga tersedia dalam bentuk compiler, PAL
adalah bahasa Script yang terdiri atas beberapa modul sebagai berikut:
- The Paradox Query Language : bahasa yang diberi nama QBE (Query By Example) untuk melakukan query terhadap basisdata paradox.
- Validity checking : fasilitas untuk melakukan validasi terhadap data
- Multitable forms : fasilitas yang memungkin formulir dataentry berhubungan dengan lebih dari satu tabel.
- Report generator : fasilitas user-friendly untuk membuat laporan yang dilandasi oleh basisdata
- Graphics : fasilitas untuk menciptakan grafik seperti pie, bar, dan line yang dilandasi oleh data dari file-file basisdata
Contoh sederhana dari suatu script PAL disajikan berikut ini:
PROC PALSCRIP( )
PRIVATE name, password, username
VIEW “USERS”
MOVETO FIELD “last name: “
FOR i FROM 1 TO 4
@4,6 ? “Masukkan nama-nya : “
ACCEPT “A10” TO username
@4,6 CLEAR EOS
CURSOR NORMAL
LOCATE username
IF retval
THEN naemok = True
QUITLOOP
ELSE BEEP
MESSAGE “Nama anda tidak terdaftar”
ENDIF
ENDFOR
ENDPROC
BahasaVisual dBase
Pada pertengahan tahun 1990-an Microsoft Corporation memperkenalkan
beberapa produk ber-orientasi objek yang menonjolkan disain antarmuka
berbentuk visualisasi seperti Visual BASIC, Visual C++, Borland Delphi,
dsb. Sejalan dengan perkembangan itu maka Borland juga me-rilis Visual
dBase, yang memiliki bahasa dasar yang persis sama dengan bahasa xBase.
Namun demikian pada hakekatnya konsep pemrograman xBase dan Visual
dBase sangat berbeda. Pemrograman xBase mengikuti konsep prosedural,
dimana program adalah susunan baris-baris program yang dilaksanakan
secara ber-urutan melalui suatu prosedur-prosedur yang telah ditetapkan.
Visual dBase mengikuti konsep “event-driven”, bahwa program berjalan
berdasarkan urutan kejadian (event) yang dilakukan oleh user. Suatu
event bisa berarti aksi yang dilakukan user ketika meng-klik mouse,
menekan tombol Enter, atau memilih satu item-menu, dsb.
Membuat program dalam Visual dBase tidak dimulai dengan mengetik
baris-baris program tetapi dimulai dengan formulir antarmuka, misalnya
formulir dataentry atau formulir untuk report. Pada rancangan antarmuka
ini biasanya dipasangi tombol-tombol khusus yang apabila di-klik
(event-driven) akan melakukan sesuatu, nah dibelakang tombol-tombol
inilah dipasangi program, misalnya sbb:
Procedure TOMBOLHAPUS_OnClick
Jawaban = MSGBOX(“Anda Yakin?”, ;
“Menghapus Record data ini”, 4+16)
IF Jawaban <> 6 && Pilihan No
MSGBOX(“Record ini tdk dihapus”, “Perhatian”, 0)
RETURN
ELSE
* Menghapus Record Data
DELETE
MSGBOX(“Record ini sudah dihapus”, “Perhatian”, 0)
* ambil data sebelumnya
SKIP -1
* arahkan pointer record ke
* record pertama bila ketemu BOF
IF BOF( )
GOTO TOP
ENDIF
* akhiri program jika tak ada lagi
IF EOF( )
MSGBOX(“Record sudah habis”, “Perhatian”, 0)
FORM.Close( )
ENDIF
ENDIF
* tampilkan record sekarang ini
Form.TampilkanField()
RETURN
Program diatas adalah potongan program yang berada dibalik satu
tombol yang bernama TOMBOLHAPUS, bila tombol ini di-klik maka program
tersebut dilaksanakan.
Tidak ada komentar:
Posting Komentar