PENDAHULUAN
Apa itu Bahasa Generasi Keempat ?
Selama seperempat abad bahasa untuk komputasi komersial telah berkembang dengat lambat. Telah ada perbedaan sintak tapi konstruksi dasrnya hampir sama. Kemudian muncul suatu piranti baru yang disebut dengan 'Bahasa generasi keempat', ‘Bahasa produktifitas Tinggi’, ‘Bahasa non-prosedural’, ‘Pembuat aplikasi’. Kemampuan piranti baru ini meliputi :
- Tidak perlu training yang lama pada DP.
- Bahasa untuk semua pemakai (profesional DP sampai pemakai akhir)
- Bahasa query
- Pembuat aplikasi
- Mencakup bahasa prosedural maupun nonprosedural
(Sebagian bahasa generasi keempat memenuhi ciri di atas tapi sebagian tidak.)
Generasi Bahasa Komputer :
Bahasa Generasi Pertama bahasa mesin
- tidak ada interpreter/kompilator
- diprogram dengan notasi biner
- sulit untuk tidak melakukan kesalahan.
contoh : 011011 000000 000000 000001 110101
berarti: bersihkan akumulator masukan isi lokasi penyimpanan 117 ke dlmnya
Bahasa Generasi Kedua bahasa assembly (1950-an)
- pengalamatan secara simbolis bukan alamat fisik.
- terdiri dari : SAP, AUTOCODER, SPS, BAL dan EASYCODER.
Contoh : CLA SALARY
Salary menunjukkan lokasi memori tempat variabel salary disimpan.
Bahasa Generasi Ketiga bahasa tingkat tinggi (1960-an)
- menggunakan kata-kata bahasa Ingggris
- menekankan formula dalam notasi matematika
- program dapat dikonversikan untuk dijalankan pada mesin-mesin yang berbeda.
- terdiri dari : ALGOL, FORTRAN, COBOL, PL/I dan ADA.
Contoh : x = (a+b) / (c+d)
Bahasa Generasi Keempat bahasa produktifitas tinggi (1970-an)
- mempercepat proses pembuatan aplikasi (baris code lebih sedikit)
- mempermudah aplikasi dan mempercepat perubahan.
- meminimalkan problem debugging.
- pemakai dapat memecahkan problem sendiri.
- terdiri dari : Informix, Oracle
Bahasa Generasi Kelima bidang artificial inteligence‘ (1980-an)
- sistem berbasis pengetahuan
- mesin dapat menggambarkan kesimpulan berdasarkan kode pengetahuan yang kompleks.
- terdiri dari : Prolog, LISP
Bahasa Prosedural dan Non Prosedural
* Bahasa Prosedural menentukan ‘Bagaimana’ sesuatu diselesaikan.
* Bahasa Nonprosedural menentukan ‘Apakah’ yang akan diselesaikan.
#Bahasa Prosedural :
- programmer memberikan instruksi yang detail tentang bagaimana masing-masing tugas diselesaikan.
- contohnya : COBOL, PL/I
#Bahasa Nonprosedural :
- pemakai mendapat hasil yang cepat tanpa mengatakan prosedur bagaimana hal itu dikerjakan.
- hampir semua bahasa queri, pembuatan laporan, paket grafik dan pembuat aplikasi adalah nonprosedural.
- contohnya : Informix, NOMAD
KARAKTER, PROPERTI DAN
KOMPONEN 4GL
Kriteria pokok pada 4GL :
- apakah diperuntukkan untuk perhitungan yang rutin atau pembuatan keputusan ad-hoc ?
- apakah diperuntukkan bagi pemakai akhir atau DP profesional ?
- apakah memerlukan ketrampilan programmer atau seorang analis yang meng-gunakannya ?
- feature manakah yang disediakan ? (exp. simple query, pembuatan laporan)
- apakah on-line atau off-line ?
- apakah dijalankan untuk mainframe, mini atau pc ?
- apakah cukup mudah digunakan dan hasilnya cepat diperoleh ?
Properti 4GL :
Agar suatu bahasa disebut dengan ‘Generasi Keempat’ harus mempunyai karakteristik sebagai berikut :
1. User-friendly.
2. Programmer non-profesional dapat memperoleh hasil
3. Menggunakan DBMS secara langsung.
4. Program untuk semua aplikasi dapat dibuat dengan satu perintah instruksi yang lebih sedikit.
5. Disusun untuk operasi on-line.
6. Mempermudah pemahaman dan perawatan code orang lain.
7. Prototype dapat dibuat dan dimodifikasi dengan cepat.
Komponen 4GL :
Gb. Komponen 4GL untuk membangun aplikasi
Appli parameter : pemberian prosedur nama, katalog, versinya dan pembuat
Data spec : spesifikasi data, file yang digunakan.
Report spec : penentuan spesifikasi laporan berdasarkan data yg diambil.
Screen spec : laporan dan spesifikasi tampilan pada layar
Dialogue spec : memberikan struktur interaksi orang dan komputer.
Spec of rules : aturan-aturan untuk menentukan keputusan. Biasanya dipisah-kan dari badan aplikasi.
BAGAIMANA 4GL DIGUNAKAN
Problem dengan Pemrosesan Data
- Pemakai tidak mendapatkan aplikasi ketika mereka menginginkannya. Sering ada delay atas tahun.
- Sukar atau tidak mungkin mendapatkan perubahan manajemen dalam jumlah waktu tertentu.
- Program mempunyai kesalahan atau kadang-kadang tidak bekerja.
- Sistem yang digunakan sering tidak bergabung dengan persyaratan pemakai yang benar.
- Sukar untuk memahami DP dan berkomunikasi persyaratan secara tepat.
- Spesifikasi bahwa pemakai harus menandatangani, sulit untuk dikontrol.
- Harga sistem banyak mengembangkan dan menjaga daripada mengantisipasi.
- Karena waktu yang lama untuk mendapatkan hasil, sistem decision support tidak pernah diimplementasikan.
Perubahan Pengembangan Life Cycle
Sejarah life cycle tumbuh sebelum peralatan dan teknik ini muncul :
- Bahasa nonprosedural
- Teknik membuat code program secara otomatis
- Bahasa spesifikasi yang dapat menghitung
- Peralatan grafik on-line untuk disain
- Bahasa untuk pemakai terakhir
- Konsep pusat informasi
Requirements
Specifications
Design
Programming
Testing
Integration Testing
Development
Maintenance
Gb. Tradisional Development Life Cycle
Type Life Cycle :
1. Sistem Ad-hoc
Pemakai/analis akan menyaring, membuat dan memanipulasi data. Tidak ada persyaratan analisis atau spesifikasi penulisan. Sistem ini dirawat sepenuhnya oleh pembuat. Tidak ada life cycle formal.
2. Prototype Cycle
Prototype dibuat oleh sistem analis dan reaksi pemakai pada prototype menyebab-kan terjadinya modifikasi.
3. Prototype-3GL Cycle
Diprogram ke 3GL untuk mendapatkan efesiensi mesin yang lebih besar.
4. Spesifikasi dan 4GL Cycle
Analisa dan spesifikasi dengan life cycle tradisional tetapi code dibuat dengan code generator.
5. Lingkaran Spesifikasi Bahasa
Spesifikasi manual biasanya tidak konsisten, ambigius, dan tidak lengkap. Pada lingkungan ini administrator data akan menjaga kamus dan data yang digunakan organisasi.
Pendekatan Phisik
Tidak hanya bahasa yang diubah tetapi pendekatan phisik ke mesin juga berubah.
Komputer generasi I : panel dengan kabel dipasang.
Komputer generasi II : tidak mengatur program pada console.
Komputer generasi III : jarang melihat mesin.
Contoh : BASIC didesain sebagai bahasa berorientasi pada terminal.
COBOL didesain tanpa melalui pemrograman interaktif.
PC yang akan datang akan terkoneksi pada mainframe dengan LAN yang memberikan kecepatan transmisi beberapa kali lebih cepat dibandingkan dengan sirkuit telepon.
Bahasa yang akan datang seperti pengisian on-line, dengan operasi on-line komputer dapat menuntun developer dalam proses pengambilan langkah, memberikan keterangan singkat dan jika memilih fungsi Help memberi keterangan yang detail.
Gelombang 4GL
Gelombang Pengembangan 4GL :
1. Bahasa off-line yang digunakan pemakai untuk mengisi form. Contoh : MARK IV.
2. Bahasa yang dapat beroperasi pada terminal yang menyerupai mesin ketik. Contoh : SQL.
3. Bahasa yang dirancang untuk monitor dumb. Contoh : QBE.
4. Bahasa yang dirancang untuk waktu tanggap pada PC/LAN
5. Bahasa yang menggunakan grafik untuk desain program. contoh : CAD/CAM
Bagan System
Pemrosesan desain yang komplek dimulai dengan 'bagan' dan berlanjut ke representasi detail.
Contoh : arsitektur rumah, desainer aplikasi komputer.
Properti bagan yang penting dapat dipahami oleh pemakai akhir. Tipe-tipe bagan yang digunakan adalah :
- prototipe
- DFD
- Diagram HIPO
- Diagram Warnier
- Notasi HOS
- Aksi Diagram basis data
* Aksi Diagram basis data menunjukkan logika dan relasinya pada struktur basis data.
* DFD menunjukkan interaksi diantara pemrosesan yang terpisah.
* HOS menunjukkan penguraian fungsi yang formal.
Interpreter dan Compiler
Kode pada bahasa generasi III disebut 'Source Code', diterjemahkan compiler untuk membentuk 'Object Code'
Compiler >> 'offline'
interpreter >> 'online'
Interpreter kurang efisien dalam penggunaan mesin. Perbedaan antara compiler dan interpreter menjadi lebih kabur dengan 4GL.
Hampir semua 4GL disusun operasi on-line dan dialog memerlukan tempat antara software dan orang yang membuat aplikasi.
* Aspek menarik dari penggunaan compiler terpisah adalah prototipe dibuat pada PC dan kemudian dicompile untuk berjalan secara efisien pada mainframe.
Menemukan Kesalahan Sedini Mungkin
Prinsip penting dari pengembangan aplikasi. Statistik menunjukkan kesalahan selama pengetesan program 10 kali lebih mahal dibandingkan pada tahap spesifikasi.
- secara tradisional kesalahan ada dalam test program atau tahap perawatan.
- 4GL yang baik tergantung pada basis data yang disimpan.
Gelombang
Informix-4GL adalah bahasa pemrograman generasi keempat yg memberikan kombinasi dua keunggulan yaitu prosedural & non prosedural, sehingga mampu memberikan semua fasilitas yg diperlukan dalam membentuk RDBMS.
Kemampuan informix meliputi :
• Bahasa pemrograman
• Screen-building utility
• Menu-building utility
• Report writer
• Window manager
Informix-4GL didisain secara khusus untuk penulisan program dalam membuat database relasional dan memberi fasilitas untuk memanipulasi data yg disimpan dalam database.
Penyimpanan Data
Informix menyimpan data-data didalam suatu tabel.
Tabel adalah kumpulan dari baris & kolom.
Tabel-tabel tsb disimpan dalam suatu database.
Suatu database minimal terdiri dari satu tabel.
T
Tttt
Database_1
database_2
Tabel : NPM Nama Kota field/attribute
record/baris 1 10197521 Viona Jakarta
record/baris 2 10197214 Irfan Bogor data value
10197687 Benita Jakarta
Field/kolom 1 kolom2 kolom 3
Informix
Isql r4gl/i4gl
Informix-SQL merupakan kumpulan lengkap dari manajemen database yg memungkinkan kita untuk melaksanakan tugas dengan jangkauan yg luas.
Dengan informix-sql, kita dapat :
- menyusun & memodifikasi tabel
- menggunakan menu yg disediakan oleh schema editor
- memasukkan & mencari informasi database dgn menggunakan screen form
- mengurutkan, menggabungkan, mengatur & menampilkan data dengan report.
- Menambahkan, mengubah & mencari informasi database menggunakan query language
- Memanfaatkan isql melalui fasilitas khusus, user menu
i4gl (informix-4GL) C compiler
r4gl (rapid development system)
r4gl memberikan fasilitas koreksi (debugger), program di-compile lebih cepat dari i4gl.
Sedangkan standart i4gl memerlukan compiler C.
r4GL tidak memerlukan compiler C dalam membetuk program eksekusi
MEMULAI ISQL :
Ketik “isql” pada prompt unix
/u/filkom> isql
layar monitor
Kemudian akan muncul menu utama dari isql, sbb.:
Informix-SQL: Form Report Query-language User menu Database Table Exit
Run, modify, create, or drop a form
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - -- - - - - - - - - -- - Press CTRL-W for help - - - -
Menu Utama dari isql
Menu isql terdiri dari 6 menu utama seperti diatas.
Menu dapat dipilih dengan menyorot menu yg diinginkan atau dengan mengetik huruf pertama dari menu tsb.
Baris kedua menampilkan pesan dari menu yg dipilih / yg disorot.
Query language Report Form
Table
Database User Menu
Gambar. Menu Hierarki ISQL
MENU DATABASE – ISQL
Ada 2 cara untuk membuat database :
- melalui menu utama dengan memilih ‘database’
- menggunakan ‘sql’ dari menu ‘query language’
langkah-langkah membuat database, sbb. :
Informix-SQL: Form Report Query-language User menu Database Table Exit
Select , create, or drop a database
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - -- - - - - - - - - -- - Press CTRL-W for help - - - -
DATABASE : Select Create Drop Exit
Select a database to work with.
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - -- - - - - - - - - -- - Press CTRL-W for help - - - -
DATABASE : Select Create Drop Exit
Create a new database
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - -- - - - - - - - - -- - Press CTRL-W for help - - - -
CREATE DATABASE >> filkom
Enter the name you want to assign to the new database, then press Return
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - -- - - - - - - - - -- - Press CTRL-W for help - - - -
DATABASE : Select Create Drop Exit
Select a database to work with.
- - - - - - - - - - - - - - - - - - - - - - - filkom - --- - - - - - - - - -- - Press CTRL-W for help - - - -
Select : untuk memilih database yang akan digunakan
Create : untuk membuat database baru
Syarat pemberian nama database :
- panjang 1-18 karakter
- dimulai dengan huruf
- tidak boleh ada spasi
- tidak boleh menggunakan karakter khusus kecuali ‘_’
Drop : untuk menghapus suatu database
Exit : kembali ke menu utama
MENU TABLE DALAM ISQL
Informix-SQL: Form Report Query-language User menu Database Table Exit
Create, Alter, or Drop a database table
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - -- - - - - - - - - -- - Press CTRL-W for help - - - -
Untuk masuk ke menu ‘table’ tekan tombol ‘T’ , kemudian monitor akan menampilkan menu table sbb.:
TABLE : Create Alter Info Drop Exit
Create a new table
- - - - - - - - - - - - - - - - - - - - - - - filkom - -- - - - - - - - - -- - Press CTRL-W for help - - - -
Create : untuk membuat tabel baru
Alter : untuk mengubah tabel yg telah dibuat
Info : untuk mengetahui struktur suatu tabel
Drop : untuk menghapus tabel beserta datanya
Exit : keluar dari menu tabel & kembali ke menu utama
Jika anda memilih ‘create’ dalam menu table , maka tampilan berikutnya seperti dibawah ini
CREATE TABLE >> t_master
Enter the table nama you wish to create with the schema editor
- - - - - - - - - - - - - - - - - - - - - - - - filkom -- - - - - - - - - -- - Press CTRL-W for help - - - -
CREATE TABLE t_master : Add Modify Drop Screen Exit
Adds columns to the table above the line with the highlight
- - - - - - - - page 1 of 1 - - - - - - - - filkom -- - - - - - - - - -- - Press CTRL-W for help - - - -
Column name Type Length Index Nulls
ADD NAME >> _
Enter column name. Return adds it. INTERRUPT return to CREATE / ALTER menu
- - - - - - - - page 1 of 1 - - - - - - - - filkom -- - - - - - - - - -- - Press CTRL-W for help - - - -
Column name Type Length Index Nulls
ADD TYPE t_master >> Char Number Serial Date Money date-Time Interval
Permits any combination of letters, numbers, and symbols
- - - - - - - - page 1 of 1 - - - - - - - - filkom -- - - - - - - - - -- - Press CTRL-W for help - - - -
Column name Type Length Index Nulls
npm
ADD LENGTH >> _
Enter column length. RETURN adds it
- - - - - - - - page 1 of 1 - - - - - - - - filkom -- - - - - - - - - -- - Press CTRL-W for help - - - -
Column name Type Length Index Nulls
npm char
ADD INDEX t_master : Yes No
Specifies that this columns will NOT have an index
- - - - - - - - page 1 of 1 - - - - - - - - filkom -- - - - - - - - - -- - Press CTRL-W for help - - - -
Column name Type Length Index Nulls
npm char 8
ADD NULLS t_master : Yes No
Permits null values in this column
- - - - - - - - page 1 of 1 - - - - - - - - filkom -- - - - - - - - - -- - Press CTRL-W for help - - - -
Column name Type Length Index Nulls
npm char 8 Yes
CREATE TABLE t_master : Add Modify Drop Screen Exit
Leaves the CREATE TABLE Menu
- - - - - - - - page 1 of 1 - - - - - - - - filkom -- - - - - - - - - -- - Press CTRL-W for help - - - -
Column name Type Length Index Nulls
npm char 8 Yes No
nama char 25 Yes
alamat char 40 yes
EXIT t_master : Build-new-table Discard-new-table
Builds a new table and returns to the Table Menu
- - - - - - - - page 1 of 1 - - - - - - - - filkom -- - - - - - - - - -- - Press CTRL-W for help - - - -
Column name Type Length Index Nulls
npm char 8 Yes No
nama char 25 Yes
alamat char 40 yes
Build-new-table : membentuk tabel
Discard-new-table : membatalkan pembentukan tabel
Menu ‘ALTER TABLE’
ALTER TABLE >> _
Enter the table name you wish to alter with the schema editor
- - - - - - - - - - - - - - - - - - - - - - - filkom -- - - - - - - - - -- - Press CTRL-W for help - - - -
t_biaya
t_coba
t_master
ALTER TABLE t_master : Add Modify Drop Screen Exit
Adds column to the table above the line with the highlight
- - - - - -page 1 of 1 - - - - - - - - - - filkom -- - - - - - - - - -- - Press CTRL-W for help - - - -
Column name Type Length Index Nulls
npm char 8 Yes No
nama char 25 Yes
alamat char 40 yes
Menu ‘INFO TABLE’
INFO FOR TABLE >> _
Choose a table with the Arrow Keys, or enter a name, then press Return
- - - - - - - - - - - - - - - - - - - - - - - filkom -- - - - - - - - - -- - Press CTRL-W for help - - - -
t_biaya
t_coba
t_master
INFO t_master : Columns Indexes Privileges Status Table Exit
Display columns, names and data types for a table
- - - - - - - - - - - - - - - - - filkom -- - - - - - - - - -- - Press CTRL-W for help - - - -
Column name Type Nulls
npm char(8) No
nama char(25) Yes
alamat char(40) yes
MENU FORM dalam ISQL
Screen form adalah media yg digunakan untuk input/output variabel pada program 4GL, dan juga digunakan sebagai penghubung data secara interaktif untuk menghapus, melihat, modifikasi atau menghapus data.
Pembuatan form ada 2 cara :
• Generate : sistem informix yg membuat form
• New : programmer yg membuat sendiri
Informix-SQL: Form Report Query-language User menu Database Table Exit
Run, modify, create, or drop a form
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - -- - - - - - - - - -- - Press CTRL-W for help - - - -
FORM : Run Modify Generate New Compile Drop Exit
Use a form to enter data or query a database
- - - - - - - - - - - - - - - - - - - - - filkom- - - - -- - - - - - - - - -- - Press CTRL-W for help - - - -
Run : untuk menjalankan form yg telah dicompile / generate
Modify : mengubah bentuk form yg telah dibuat / digenerate
Generate : membuat form baru dgn bantuan sistem informix
New : membuat form baru tanpa bantuan sistem informix
Compile : mengcompile form yg telah dibuat/dimodifikasi sehingga dapat
dijalankan
Drop : untuk menghapus form
Langkah-langkah pembuatan form dengan menggunakan ‘Generate’
GENERATE FORM >> f_master
Enter the name you want to assign to then form, then press Return
- - - - - - - - - - - - - - - - - - - - - filkom- - - - -- - - - - - - - - -- - Press CTRL-W for help - - - -
CHOOSE TABLE >>
Choose the table to be used in the default form
- - - - - - - - - - - - - - - - - - - - - filkom- - - - -- - - - - - - - - -- - Press CTRL-W for help - - - -
informix.t_biaya
informix.t_coba
informix.t_master
GENERATE FORM : Table-selection-compile Select-more-tables Exit
Continue creating a default form with the selected tables
- - - - - - - - - - - - - - - - - - - - - filkom- - - - -- - - - - - - - - -- - Press CTRL-W for help - - - -
Setelah memilih ‘Table-select-compile’, kemudian akan kembali menu Form, ini berarti sudah tercipta sebuah form dengan nama ‘f_master’, jika ingin melihat tampilan dari form tsb, maka pilih ‘Run’ pd menu Form.
Langkah-langkah pembuatan form dengan menggunakan ‘New’
NEW FORM>> f_master2
Enter the name you want to assign to the form, then press Return
- - - - - - - - - - - - - - - - - - - - - filkom- - - - -- - - - - - - - - -- - Press CTRL-W for help - - - -
USE-EDITOR >> vi
Enter editor name, (RETURN only for default editor)
- - - - - - - - - - - - - - - - - - - - - filkom- - - - -- - - - - - - - - -- - Press CTRL-W for help - - - -
~ _
~
~ ‘buat sendiri program yang anda inginkan’
~ harus mengetahui penggunaan editor ‘vi’
~
“tmp/f_master2.per [new file]
Setelah program selesai dibuat, maka tampilan selanjutnya sbb.:
NEW FORM : Compile Save-and-exit Discard-and-exit
Compile the form specification.
- - - - - - - - - - - - - - - - - - - - - filkom- - - - -- - - - - - - - - -- - Press CTRL-W for help - - - -
Form yang telah dibuat dengan ‘Generate’ atau ‘New’ , dapat ditampilkan dengan memilih ‘Run’ pada menu Form.
RUN FORM>> _
Choose a form with Arrow Keys, or enter a name, then press Return
- - - - - - - - - - - - - - - - - - - - - filkom- - - - -- - - - - - - - - -- - Press CTRL-W for help - - - -
f_biaya
f_coba
f_master
PERFORM : Query Next Previous View Add Update Remove Table …
Searches the active database table
1 : t_master table
Npm [ ]
Nama [ ]
Alamat [ ]
Kota [ ]
Telpon [ ]
Kelas [ ]
Ipk [ ]
Jika anda ingin mencari data atau mengubah data maka pilihlah ‘query’
QUERY : ESCAPE queries. INTERUPT discards query. ARROW keys move cursor.
Searches the active database table
1 : t_master table
Npm [ ]
Nama [ ]
Alamat [ ]
Kota [Jakarta ]
Telpon [ ]
Kelas [ ]
Ipk [ ]
Contoh : mencari data mahasiswa yg alamatnya di ‘Jakarta’
Setelah memasukkan kondisi seperti diatas, kemudian tekan tombol ‘Esc’
Tampilan sama dengan atas, yg berbeda cuma pojok kiri bawah
Searching …………………
Jika datanya ketemu, maka tampilan selanjutnya ….
PERFORM : Query Next Previous View Add Update Remove Table …
Searches the active database table
1 : t_master table
Npm [10197348]
Nama [Yudisthira ]
Alamat [Salemba No.33 ]
Kota [Jakarta ]
Telpon [4212817 ]
Kelas [4KA01]
Ipk [2,65]
15 row(s) found
Beberapa contoh mencari data dengan menggunakan ‘query’ pada menu ‘Run-Form (PERFORM)’
QUERY : ESCAPE queries. INTERUPT discards query. ARROW keys move cursor.
Searches the active database table
1 : t_master table
Npm [???97* ]
Nama [ ]
Alamat [ ]
Kota [ ]
Telpon [ ]
Kelas [ ]
Ipk [>3,00]
QUERY : ESCAPE queries. INTERUPT discards query. ARROW keys move cursor.
Searches the active database table
1 : t_master table
Npm [1?196* ]
Nama [ *ika* Nasution ]
Alamat [ ]
Kota [ ]
Telpon [ ]
Kelas [ ]
Ipk [ ]
QUERY : ESCAPE queries. INTERUPT discards query. ARROW keys move cursor.
Searches the active database table
1 : t_master table
Npm [ ]
Nama [ ]
Alamat [ ]
Kota [Depok ]
Telpon [ ]
Kelas [4KA06]
Ipk [ ]
QUERY : ESCAPE queries. INTERUPT discards query. ARROW keys move cursor.
Searches the active database table
1 : t_master table
Npm [ ]
Nama [ ]
Alamat [ ]
Kota [ ]
Telpon [8727541 ]
Kelas [ ]
Ipk [ ]
Tampilan penggunaan ‘Add’ pada menu ‘Run-Form (PERFORM)’
ADD : ESCAPE adds new data. INTERRUPT discards it. ARROW keys move cursor
Adds new data to the active database table
1 : t_master table
Npm [ _ ]
Nama [ ]
Alamat [ ]
Masukkan data , kemudian tekan tombol ‘Esc’
PERFORM : Query Next Previous View Add Update Remove Table ….
Adds new data to the active database table
1 : t_master table
Npm [10197521]
Nama [Evita ]
Alamat [Akses UI No.53 ]
Row added
Tampilan penggunaan ‘Update’ pada menu ‘Run-Form (PERFORM)’
UPDATE : ESCAPE changes data. INTERRUPT discard changes
Changes this row in the active database table.
1 : t_master table
Npm [10197521]
Nama [Evita ]
Alamat [Akses UI No.53 ]
Ubahlah data diatas sesuai yg diinginkan, kemudian tekan tombol ‘Esc’
PERFORM : Query Next Previous View Add Update Remove Table ….
Changes data to the active database table
1 : t_master table
Npm [10197521]
Nama [Evita Adjani ]
Alamat [Akses UI No.53 ]
This row has been changed
Tampilan penggunaan ‘Remove’ pada menu ‘Run-Form (PERFORM)’
REMOVE : Yes No
Removes this row from the active table
1 : t_master table
Npm [10197521]
PERFORM : Query Next Previous View Add Update Remove Table ….
Delete a row from the active database table
1 : t_master table
Npm [ ]
Row deleted
Tampilan penggunaan ‘Compile’ pada menu ‘Form’
FORM : Run Modify Generate New Compile Drop Exit
Compile the form specification
- - - - - - - - - - - - - - - - - - - - - filkom- - - - -- - - - - - - - - -- - Press CTRL-W for help - - - -
COMPILE FORM >> _
Choose a form with the ARROW Keys, or enter a name, then press Return
- - - - - - - - - - - - - - - - - - - - - filkom- - - - -- - - - - - - - - -- - Press CTRL-W for help - - - -
f_biaya
f_coba
f_master
Tampilan penggunaan ‘Drop’ pada menu ‘Form’
FORM : Run Modify Generate New Compile Drop Exit
Drop a form
- - - - - - - - - - - - - - - - - - - - - filkom- - - - -- - - - - - - - - -- - Press CTRL-W for help - - - -
DROP FORM >> _
Choose a form with the ARROW Keys, or enter a name, then press Return
- - - - - - - - - - - - - - - - - - - - - filkom- - - - -- - - - - - - - - -- - Press CTRL-W for help - - - -
f_biaya
f_coba
f_master
CONFIRM : No Yes
No, I do not want to drop it
- - - - - - - - - - - - - - - - - - - - - filkom- - - - -- - - - - - - - - -- - Press CTRL-W for help - - - -
f_biaya
f_coba
f_master
MODIFY FORM
FORM : Run Modify Generate New Compile Drop Exit
Modify a form
- - - - - - - - - - - - - - - - - - - - - filkom- - - - -- - - - - - - - - -- - Press CTRL-W for help - - - -
f_biaya
f_coba
f_master
MODIFY FORM >>_
Choose a form with the ARROW Keys, or enter a name, then press Return
- - - - - - - - - - - - - - - - - - - - - filkom- - - - -- - - - - - - - - -- - Press CTRL-W for help - - - -
f_biaya
f_coba
f_master
Database filkom
Screen size 24 by 80
{
npm [f010 ]
nama [f020 ]
alamat [f030 ]
}
end
tables
t_master
attributes
f010 = t_master.npm;
f020 = t_master.nama;
f030 = t_master.alamat;
end
tekan tombol ‘Esc’ kemudian ketik ‘:wq’
Tampilan program diatas seperti tampilan sebelumnya
Npm [ ]
Nama [ ]
Alamat [ ]
Ubahlah tampilan disamping tsb. menjadi seperti dibawah ini.
Untuk membuat tampilan seperti yang diinginkan, maka program awal harus diubah sbb.:
Database filkom
Screen size 24 by 80
{
\gp-------------------------------------------------------------------q\g
\g|\g BIODATA MAHASISWA \g|\g
\g|\g \g----------------------------\g \g|\g
\g|\g \g|\g
\g|\g \g|\g
\g|\g Nomor Pokok Mhs. = [f010 ] \g|\g
\g|\g Nama Mahasiswa = [f020 ] \g|\g
\g|\g Alamat Mahasiswa = [f030 ] \g|\g
\g|\g \g|\g
\g|\g \g|\g
\gb-------------------------------------------------------------------d\g
}
end
tables
t_master
attributes
f010 = t_master.npm,required;
f020 = t_master.nama,autonext;
f030 = t_master.alamat;
end
tekan tombol ‘Esc’ kemudian ketik ‘:wq’
DATABASE section
SCREEN section
{
[text] [field_tag] [char_graphics]
……..
}
END
TABLES table names
ATTRIBUTES
field_tag = table.column [,type];
……..
END
DATABASE section :
Mengidentifikasi database yg digunakan
Jika tidak memakai database, maka ditulis ‘DATABASE FORM ONLY’
SCREEN section :
Untuk menggambarkan bagaimana form akan ditampilkan di monitor.
Default adalah 24 baris, 80 kolom.
[text] :
kata / kalimat yang akan ditampilkan di monitor
[field_tag] :
untuk menunjukkan bagaimana data akan ditampilkan di monitor,
field yang akan ditampilkan menggunakan tanda [ ], masing-masing filed
b’hubungan dgn [field_tag] yg diidentifikasikan di ATTRIBUTES section.
[char_graphics] :
yang dapat digunakan antara lain :
char tampilan di layar
p
q
b
d
|
-
TABLES :
Digunakan untuk mengidentifikasikan seluruh nama tabel yg dipakai dalam spesifikasi form.
ATTRIBUTES :
Menggambarkan bagaimana bentuk dari masing-masing field yang akan ditampilkan di monitor.
TYPE :
Argumen yang dapat digunakan pada tiap field, antara lain :
autonext Kursor otomatis pindah ke field berikutnya jika karakter untuk field tsb sudah penuh
downshift Semua karakter dikonversi ke huruf kecil
upshift Semua karakter dikonversi ke huruf besar
comments Perform akan menampilkan pesan dibawah layar ketika kursor pindah ke field yg diberi argumen comments.
Contoh :
F001 = t_master.alamat,comments=’Alamat harus lengkap’;
include Menentukan nilai-nilai yg diperbolehkan masuk dalam field ini.
Contoh :
F002 = t_master.agama,include=(‘1’,’2’,’3’,’4’,’5’);
F003 = t_master.jns_kel,include=(‘1’,’2’);
default Memberikan nilai dasar bila field tidak diisi
Contoh :
F004 = t_master.ket,default=’T’;
noentry Mencegah pemasukan data
picture Menspesikasikan pola data masukan
A huruf , # numerik , x alfanumerik
Contoh :
F005 = t_krs.kd_mk,picture =’AA-######’;
F006 = t_biaya.jml,picture =’Rp ##.###.###,##’;
required Memaksa pemasukan nilai pada field tsb.
Contoh :
F007 = t_master.kode_pos,required;
reverse Mengganti warna karakter kebalikan dengan warna background.
right Agar data rata kanan
verify Memaksa pemasukan nilai sebanyak dua kali
zerofill Agar field rata kanan dan dimulai dengan angka 0, berguna untuk data bertipe numerik
LATIHAN !!!
Diketahui : nama database yg digunakan adalah mahasiswa
Nama tabel yg digunakan adalah t_biodata
Struktur filenya sbb.:
Npm char 8
Nama char 25
Agama char 1
Alamat char 30
Kode_pos char 5
Jenis_kel char 1
Buatlah program untuk membuat form, dengan ketentuan :
- npm harus diisi & jika field telah penuh, maka kursor berpindah secara otomatis
- nama yang dimasukkan dengan huruf kecil harus berubah menjadi huruf besar
- agama hanya berisi kode 1,2,3,4,5
- kode_pos harus diisi
- jenis_kel hanya berisi kode 1 dan 2
MENU QUERY-LANGUAGE dalam ISQL
SQL adalah bahasa query interaktif, yg merupakan sistem dasar komputer untuk pemeliharaan record.
Sebagai sebuah sistem manajemen database SQL berisi program yg handal untuk mengerjakan tugas-tugas manajemen data, yg secara nyata mengurangi jumlah waktu untuk mengorganisasi, menyimpan dan mengakses informasi.
Informix-SQL: Form Report Query-language User menu Database Table Exit
……………………………
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - -- - - - - - - - - -- - Press CTRL-W for help - - - -
SQL : New Run Modify Use-editor Output Choose save Info Drop Exit
Enter new SQL statement using the SQL editor
- - - - - - - - - - - - - - - - - - - -filkom - - - - - -- - - - - - - - - -- - Press CTRL-W for help - - - -
NEW : ESC = Done editing CTRL-A = Type over/insert
CTRL-x = Delete character CTRL-D = Delete rest of line
- - - - - - - - - - - - - - - - - - - -filkom - - - - - -- - - - - - - - - -- - Press CTRL-W for help - - - -
MODIFY: ESC = Done editing CTRL-A = Type over/insert
CTRL-x = Delete character CTRL-D = Delete rest of line
- - - - - - - - - - - - - - - - - - - -filkom - - - - - -- - - - - - - - - -- - Press CTRL-W for help - - - -
OUTPUT : Printer New-file Append-file To-pipe Exit
Send query results to a printer
- - - - - - - - - - - - - - - - - - - -filkom - - - - - -- - - - - - - - - -- - Press CTRL-W for help - - - -
CHOOSE >>
Choose a command file with the Arrow Keys, or enter a name, then press Return
- - - - - - - - - - - - - - - - - - - -filkom - - - - - -- - - - - - - - - -- - Press CTRL-W for help - - - -
Cek_npm load_data
Ins_biodata unload_dt
SAVE >>_
Enter the name you want to assign to the command file
- - - - - - - - - - - - - - - - - - - -filkom - - - - - -- - - - - - - - - -- - Press CTRL-W for help - - - -
INFO FOR TABLE >>
Choose a table with the Arrow Keys, or enter a name, then press Return
- - - - - - - - - - - - - - - - - - - -filkom - - - - - -- - - - - - - - - -- - Press CTRL-W for help - - - -
informix.t_biaya
informix.t_coba
infromix.t_master
DROP COMMAND FILE>> _
Enter the nama of the sql command file you wish to drop from the database
- - - - - - - - - - - - - - - - - - - -filkom - - - - - -- - - - - - - - - -- - Press CTRL-W for help - - - -
Cek_npm load_data
Ins_biodata unload_dt
Contoh-contoh statement sql
NEW : ESC = Done editing CTRL-A = Type over/insert
CTRL-x = Delete character CTRL-D = Delete rest of line
- - - - - - - - - - - - - - - - - - - -filkom - - - - - -- - - - - - - - - -- - Press CTRL-W for help - - - -
Select npm,nama,telpon,kelas,ipk from t_master where ipk>3.00
Order by kelas,ipk
Setelah mengetik statement tsb, tekan tpmbol ‘Esc’ maka akan tampil menu SQL. Jika ingin menampilkan output dari statement tsb, maka pilih ‘Run’ pada menu sql, dan hasilnya akan tampak sbb :
RUN : Next Restart Exit
Display the next page of query results
- - - - - - - - - - - - - - - - - - - -filkom - - - - - -- - - - - - - - - -- - Press CTRL-W for help - - - -
Npm nama telpon kelas ipk
10197348 Evita Adjani 8727541 4KA02 3,52
10197521 Sheila 4212817 4KA02 3,47
10197634 Indra 7342882 4KA03 3,61
10197867 Hendrawan 8727538 4KA06 3,25
10197491 Febrian 7321455 4KA07 3,28
Catatan untuk pengajar:
Berikan contoh data pada tabel : t_master, t_uang_klh, t_pelanggan.
Jelaskan artinya & tampilkan output dari contoh-contoh statement.
• SELECT npm,nama,telpon,kelas,ipk FROM t_master WHERE ipk>3.00 ORDER BY kelas,ipk DESC
• SELECT * FROM t_pelanggan
• SELECT no_pel,nama,telpon FROM t_pelanggan WHERE no_pel[1]=’B’
• SELECT npm,nama,kelas
FROM t_master
WHERE npm[1]=’1’ and npm[4,5]=’97’
ORDER BY kelas,nama
• SELECT npm,nama,kelas FROM t_master WHERE npm[4,5] matches’[97]’
• SELECT npm,nama FROM t_master WHERE npm[1] matches’[1234]’
• SELECT npm,nama,kelas FROM t_master WHERE nama matches’*ari*’
• SELECT * FROM t_master WHERE kelas[1] BETWEEN ‘1’ and ‘3’
• SELECT * FROM t_master WHERE kelas BETWEEN ‘4KA05’ and ‘4KA06’
• SELECT UNIQUE kelas FROM t_master WHERE kelas[1]=’4’
• SELECT COUNT(*) FROM t_master WHERE kelas=’4KA06’
• SELECT npm,nama,MONTH(tgl_lahir) FROM t_master
• SELECT npm,jml_bayar,tgl_bayar,ket_bayar from t_uang_klh
WHERE npm IN (SELECT npm from t_master WHERE kelas[1,3]=’4KA’)
• SELECT t_master.npm,nama,kelas,jml_bayar,tgl_bayar,ket_bayar
FROM t_master,t_uang_klh
WHERE t_master.npm=t_uang_klh.npm
• SELECT no_pel,nama,alamat
INTO nomor,nama_pel,almt_pel
FROM t_pelanggan
• INSERT INTO t_pelanggan
VALUES (‘B1504’,’Bambang’,’Merpati III’)
• INSERT INTO t_pelanggan (no_pel,alamat)
VALUES (‘C2503’,’Camar II’)
• INSERT INTO t_master(npm,nama,kelas)
VALUES(‘10197348’,’Evita’,’4KA02’)
• SELECT np,nm_mhs,kls_mhs FROM t_percobaan
INSERT INTO t_master(npm,nama,kelas)
• UPDATE t_pelanggan SET keterangan = null
• UPDATE t_pelanggan SET kode_pos =’10510’
WHERE alamat = ‘Jakarta Pusat’
• UPDATE t_uang_klh SET ket_bayar=’L’
WHERE npm IN (SELECT npm FROM t_master where periode=’1’)
• UPDATE t_uang_klh SET ket_bayar=’L’
WHERE npm IN
(SELECT npm FROM t_master WHERE periode matches’[123]’)
• UPDATE t_pelanggan SET alamat = ‘Akses Kelapa Dua’
WHERE alamat = ‘Akses UI’
• DELETE FROM t_pelanggan
• DELETE FROM t_pelanggan WHERE no_pel = ‘A1054’
• DELETE FROM t_master WHERE ipk < 0,50 AND kelas[1]=’5’
• DELETE FROM t_master WHERE ket_lulus = ‘K’
• CREATE DATABASE filkom
• CREATE TABLE t_master
( npm char(8),
nama char(25),
alamat char(40),
kelas char(5) )
MENU REPORT dalam ISQL
Informix-SQL: Form Report Query-language User menu Database Table Exit
Run , modify , generate, new , compile , drop
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - -- - - - - - - - - -- - Press CTRL-W for help - - - -
REPORT : Run Modify Generate New Compile Drop Exit
Run a report
Run : Run a report
Modify : modify a report specification
Generate : generate a default report
New : create a new report specification
Compile : compile a report
Drop : drop a report from the database
Ada 2 cara membuat report, yaitu dengan menggunakan ‘Generate’ atau ‘New’
Jika pilih ‘Generate’ pada menu REPORT, ketik tombol ‘G’ (huruf pertama
dari Generate)
maka tampilan di layar akan berubah seperti berikut ini :
Generate Report >> (ketik nama report)
Enter the name you want to assign to the report, then press Return
- - - - - - - - - - - - - - - - - - - - filkom - - - - - - - - - - - - - Press Ctrl W – for Help - - - - - - -
Contoh : nama reportnya adalah ‘r_coba’
Choose TABLE >> (ketik nama table atau pilih table-table dibawah)
Choose the table to be used in the default report
- - - - - - - - - - - - - - - - - - - - filkom - - - - - - - - - - - - - Press Ctrl W – for Help - - - - - - -
informix.t_biaya
informix.t_master
informix.t_uang_klh
Contoh : nama table yang dipilih adalah ‘t_master’
Setelah anda memilih table, maka tampilan layar akan kembali ke menu REPORT, sbb.:
REPORT : Run Modify Generate New Compile Drop Exit
Run a report
- - - - - - - - - - - - - - - - - - - - filkom - - - - - - - - - - - - - Press Ctrl W – for Help - - - - - - -
Pilih ‘Run’ untuk menampilkan hasilnya, kemudian layar akan berubah sbb.:
Run REPORT >> (ketik nama report atau pilih report² dibawah)
Choose a report with Arrow Keys, or enter a name
- - - - - - - - - - - - - - - - - - - - filkom - - - - - - - - - - - - - Press Ctrl W – for Help - - - - - - -
r_awal
r_coba
lap_akhir
Akan tampil output sbb.:
Run REPORT >> r_coba
Choose a report with Arrow Keys, or enter a name
- - - - - - - - - - - - - - - - - - - - filkom - - - - - - - - - - - - - Press Ctrl W – for Help - - - - - - -
The reading of the database will now …………
……………………………………………………………………………..
npm nama alamat
10197234 Niken Anwar Margonda Raya
10197575 Irwan Salemba
10197871 Vera Anita Akses UI
Output tersebut diatas dibuat oleh informix, jika anda ingin melihat programnya atau ingin mengubah tampilan outputnya, maka pada menu REPORT, pilihlah ‘Modify’
MODIFY REPORT >> _
Choose a report with the Arrow Keys, or enter a name, then press Return
- - - - - - - - - - - - - - - - - - - - filkom - - - - - - - - - - - - - Press Ctrl W – for Help - - - - - - -
r_awal
r_coba
lap_akhir
Setelah memilih nama report, muncul editor ‘vi’ yang menampilkan program sbb.:
Database filkom end
Select npm,
nama,
alamat
From informix.t_master end
Format every row end
Program diatas dapat dimodifikasi (menggunakan editor ‘vi’, pelajari tentang editor ‘vi’ ) seperti dibawah ini :
Sintaks REPORT spect
DATABASE
Nama database mutlak ada
END
DEFINE
VARIABLE var_name data_type tidak mutlak
END
INPUT
PROMPT FOR tidak mutlak
END
OUTPUT
REPORT TO (‘file.name’| Printer)
LEFT MARGIN
RIGHT MARGIN
TOP MARGIN tidak mutlak
BOTTOM MARGIN
PAGE LENGTH
END
SELECT
Statement query language mutlak ada
END
FORMAT
PAGE HEADER control block
PAGE TRAILER control block
FIRST PAGE HEADER control block
ON EVERY ROW control block mutlak ada
ON LAST ROW control block
BEFORE GROUP OF control block
AFTER GROUP OF control block
END
PAGE HEADER :
Pencetakan judul pada tiap halaman
PAGE TRAILER :
Dicetak pada baris terakhir tiap halaman
FIRST PAGE HEADER :
Pencetakan judul hanya pada halaman pertama saja
ON EVERY ROW :
Mencetak setiap baris informasi yg dikirim menggunakan looping
ON LAST ROW :
Dicetak setelah seluruh informasi selesai dicetak
BEFORE GROUP OF / AFTER GROUP :
Dicetak sebelum / sesudah pengelompokkan
Database filkom end
Output
Report to ‘/dev/lp9’
End
Select npm,nama,alamat from informix.t_master
Order by npm
End
Format
Page header
Print column 20,”BIODATA MAHASISWA”
Skip 2 lines
Print ‘------------------------------------------------------‘
Print ‘ N P M N a m a Alamat ‘
Print ‘------------------------------------------------------‘
On every row
Print column 2,npm,column 15,nama,column 35, alamat
Print ‘------------------------------------------------------‘
End
Setelah selesai diubah programnya maka tampilan berikutnya adalah
MODIFY REPORT : Compile Save-and-exit Discard-and-exit
Compile the report specification
- - - - - - - - - - - - - - - - - - - - filkom - - - - - - - - - - - - - Press Ctrl W – for Help - - - - - - -
Jika anda ingin melihat hasil yang telah di’compile’ , maka pilih menu ‘Run’ pada Report, dan akan tampil outputnya sbb.:
Run REPORT >> r_coba
Choose a report with Arrow Keys, or enter a name
- - - - - - - - - - - - - - - - - - - - filkom - - - - - - - - - - - - - Press Ctrl W – for Help - - - - - - -
The reading of the database will now …………
……………………………………………………………………………..
…………………………………………………………………………….
---------------------------------------------------------
Senin, 24 Mei 2010
ISQL
11.25
HADI SUCIPTO
No comments
0 komentar:
Posting Komentar