Modul Pemrograman Basis Data Dan SQL PDF
Modul Pemrograman Basis Data Dan SQL PDF
PEMROGRAMAN
WEB
01
Ilmu Komputer Sistem Informasi 87007 Team Dosen
Abstract Kompetensi
SDLC, RAD, Design Tersturktur, Class Memahami siklus pengembangan
dan Object sistem, memahami metodhologi
pengembangan sistem, mengenal UML
2013 Pemrograman Basis Data dan SQL Modul 01 Pusat Bahan Ajar dan eLearning
1 Team Dosen http://www.mercubuana.ac.id
PENDAHULUAN
1.1. GAMBARAN UMUM
Pada saat ini berbagai macam sistem aplikasi mengakses jutaan data dalam berbagai bentuk format
data. Sistem Aplikasi Rumah Sakit mencari data yang digunakan baik itu mencari data pasien
ataupun dokter. Aplikasi Penerbangan menggunakan ribuan data untuk mengatur penerbangan dan
penumpangnya. Sistem Perbankan juga menggunakan data untuk mencari data transaksi pelanggan.
Saat ini berbagai situs internet menggunakan Search Engine yang digunakan untuk keperluan
pencarian data dalam internet. Perusahaan besar dan kecil menggunakan database untuk mengontrol
inventory, keuangan, mengatur sumber daya manusia dan kebutuhan analisa yang lain.
Peranan Database tidak saja mempunyai peranan yang penting dalam sistem arsitek komputer tapi
juga sebagai salah satu pendorong kekuatan ekonomi Amerika Serikat dengan sumbangan pajak
kurang lebih delapan juta dollar Amerika . Perusahan – perusahaan Amerika Serikat seperti
Microsoft Inc, Oracle Corporation, Informix Corporation, Sybase Incooperated, Teradata
Corporation mendominasi pasar database di dunia. Penggunaan database tidak saja digunakan
perusahaan namun juga meliputi institusi pendidikan, militer , pemerintah ataupun kombinasi dari
berbagai institusi tersebut.
Kebanyakan dari relational database tersebut tidak terlepas dari penemuan model yang diketemukan
pada tahun 1960 – an dan 1970 – an. Perlu digaris bawahi pengembangan database tidak terlepas
daripada pengaruh pemerintah ( Amerika Serikat ) dalam hal meningkatkan teknologi. Sebagai contoh
walaupun pengembangan teknologi database dilakukan oleh perusahaan IBM, namun atas prakasa
pemerintah Amerika Serikat melalui Universitas California di Berkeley ( UC – Berkeley ) untuk
menyebarluaskan ide teknologi database dan memberikan hak intelektual secara baik komersial
maupun akademik.
Pemerintah Amerika Serikat selalu melakukan pengumpulan, meng-urutkan, dan membuat laporan
dari jumlah data yang besar. Pada tahun 1890, Departemen Sensus Penduduk Amerika menganjurkan
majikan karyawan, Herman Hollerith, untuk membuat system peralatan proses informasi secara
otomatis. Sebagai hasilnya, mesin kartu ( Punch Card ) digunakan untuk sensus pada tahun 1890
dan 1900. Pada tahun 1911, perusahaan Hollerith bergabung dengan perusahaan lain, dan juga
didukung oleh Departemen Sensus Penduduk untuk membuat sebuah perusahaan baru yang kita kenal
dengan nama International Business Machines ( Anderson, 1988 ), sekarang dengan nama IBM.
Selama perang dunia 1, pemerintah Amerika Serikat menggunakan kartu ( Punch – Card ) untuk
melakukan proses berbagai data yang digunakan untuk produksi, mengumpulkan pajak, dan klasifikasi
wajib militer. Pada tahun 1935, Departemen Perlindungan Sosial ( Social Security Act ),
menggunakan Kartu ( Punch Card ) untuk penempatan tenaga kerja dari 26 juta karyawan. Ini adalah
pekerjaan administrasi terbesar di dunia, IBM membantu membuatkan mesin khusus untuk
pengumpulan data tersebut. Departement Sensus Penduduk akhirnya membeli model pertama dari
2013 Pemrograman Basis Data dan SQL Modul 01 Pusat Bahan Ajar dan eLearning
2 Team Dosen http://www.mercubuana.ac.id
komputer digital pertama di pasar komersial, dengan nama UNIVAC 1. Pada tahun 1959, Pentagon
sendiri mempunyai 200 komputer untuk kebutuhan bisnis seperti audit biaya, audit peralatan, audit
karyawan ) dengan biaya pemeliharaan kurang lebih 70 juta dollar Amerika Serikat per tahun. Pada
saat itu Amerika didominasi oleh kartu punch untuk pemrosesan data. Berawal dari kebutuhan
pemerintah dan akhirnya banyak perusahaan – perusahaan menggunakannya.
Pada awal tahun 1960 –an, muncul keinginan untuk memindahkan tugas piranti keras dari tugas –
tugas programmer. Istilah “database” muncul untuk menangkap pengertian bahwa informasi disimpan
di dalam komputer dapat berupa konsepsual, terstruktur, dan dapat dimanipulasi secara mandiri
tanpa interfensi piranti keras. Pada saat itu, kebanyakan pembuatan aplikasi database dibuat untuk
keperluan lingkungan militer dan mata – mata ( intelligence ), tetapi konsep tersebut dengan cepat
diadopsi pada pada pengguna komersial ( System Development Corporation, 1964; Fry dan Sibley,
1974 ).
Pada saat komputer memasuki pasar komersial, sejumlah teknik muncul untuk memfasilitasi akses
data, memastikan kualitas, memelihara privasi, dan bahkan menyediakan untuk kontrol data.
Pada tahun 1960, Konferensi System Bahasa Data ( Data Systems Languages – Codasyl ), yang
diadakan oleh Departemen Pertahanan dan Keamanan Amerika Serikat membahas tentang standar
aplikasi piranti lunak, membangun bahasa Common Business – Oriented Language ( COBOL ) untuk
programming ( ACM Sigplan, 1978 ), dan menggabungkan bahasa pendefinisian data ( Fry dan Sibley,
1974 ). Magnetic disk drive yang dapat mengakses data secara random, mulai digantikan dengan
magnetic tape drives, yang membutuhkan akses data yang berurutan, untuk online storage. Pada
tahun 1961, Charles Bachman dari perusahaan General Electric memperkenalkan system Integrated
Data Store ( IDS ) , yang merupakan pelopor system management database yang memanfaatkan
teknologi penyimpanan ( storage ) terbaru ,meliputi novel schemas dan logging, dan kemampuan yang
lain.
Pada awal tahun, trend inovasi teknologi praktis dilaksanakan / di buat oleh user group dan peneliti
dari industri terkait, dengan pengaruh sedikit dari akademi ( CSTB, 1982; Wiederhold, 1984 ). Pada
pertengahan tahun 1960, Bachman dan yang lainnya, kebanyakan dari perusahaan dan pabrik,
membuat Database Task Group ( DBTG ) dibawah Codasyl untuk menyatukan persamaan pendapat
dari berbagai bidang . Group tersebut mengumumkan beberapa set spesifikasi untuk bahasa
komputer, COBOL terutama sekali, yang mengatur database. Pada Tahun 1971, hal tersebut
diumumkan sebagai standar umum, yang digunakan bahasa umum untuk berbagai industri dengan
pendekatan Codasyl untuk managament database. Beberapa Codasyl berdasarkan produk
diperkenalkan untuk komputer besar ( mainframe ) oleh Eckerct – Mauchly Computer Corporation (
pembuat UNIVAC), Honeywell Incorporated, dan Siemens AG, dan, untuk komputer sedang (
minicomputers ), dilakukan oleh Digital Equipment Coporation ( DEC ) dan Prime Computer
Corporation.
Secara praktis pemasok produk yang tidak ikut adalah IBM, yang pada awal ( Pada Tahun 1968 )
memperkenalkan produknya sendiri, IMS, yang diambil dari bagian National Aeronautics and Space
Administration ( NASA ) – Appolo Project. Dapat dijalankan pada mesin S/360. Sebaliknya Codasyl
berdasarkan model jaringan data sedangkan IBM database menggunakan struktur hirarki. Baik
2013 Pemrograman Basis Data dan SQL Modul 01 Pusat Bahan Ajar dan eLearning
3 Team Dosen http://www.mercubuana.ac.id
produk IBM maupun Codasyl, kadang – kadang disebut dengan nama navigasi database karena produk
membutuhkan pengguna untuk membuat program atau menggunakan data set.
Pada akhirnya ada seorang ilmuwan dari IBM yang kurang puas dengan produk Codasyl ataupun
produk paket database dari IBM. Edgar F. ( Ted) Codd, seorang matematikawan, yang bergabung
dengan IBM pada tahun 1949 dan pada akhirnya pindah ke IBM San Jose. Codd mendapatkan
teknologi database yang sekarang ataupun yang baru harusnya dapat menggunakan satu perintah dan
tidak perlu menggunakan beberapa perintah.
Pada seri laporan teknikal IBM, pada makalah “ A Relational Model of Data for Large Shared Data
Banks,” Codd menunjukkan pendekatan baru untuk mengatur dan akses data. Apa yang dimaksud
Codd adalah model relational yang menunjukkan 2 kata kunci :
“ Yang mendukung pendefinisian data dengan hanya struktur biasa tanpa menambahkan tambahan
struktur untuk mewakili representasi dari mesin. Menurutnya, sesuatu yang mendukung basis data
tingkat tinggi yang menghasilkan secara maksimal antara program pada satu pihak dan mewakili mesin
di satu pihak. ( Codd, 1970 ).”
1. data yang berdiri sendiri dari perangkat keras dan implementasi penyimpanan ( storage );
2. Navigasi secara otomatis pada tingkat tinggi, tanpa bahasa prosedur untuk mengakses data.
Malahan proses satu record dalam satu waktu, programmer dapat menggunakan satu bahasa yang
dapat mengakses keseluruhan data.
Model Codd mempunyai pengaruh yang luar biasa pada penelitian yang ada, banyak menelurkan
beberapa prototype projek. Model Relasi Codd mendapat sambutan hangat di dalam masyarakat luas.
1.2.1. SYSTEM R
Pada awal tahun 1970, sejumlah programmer dari IBM pindah dari Yorktown ke San Jose. Group ini
mendesain dan membangun prototype system untuk mendemonstrasikan ide – ide dari relational
database. Dengan System R, prototype ini bertujuan untuk mendukung mutu yang tinggi, tanpa
navigasi, data yang independen untuk di akses oleh secara terus – menerus, dengan integritas yang
baik dan kuat ( Astrahan et al, 1976 ). Fase dari Projek pertama, sekitar tahun 1974 – 1975,
menghasilkan prototype yang cepat untuk didemonstrasikan apa yang telah dikerjakan, tetapi
pembahasan source code ditinggalkan. Fase berikutnya menghasilkan fungsi secara penuh, versi
multi pengguna, yang digunakan untuk mengevaluasi percobaan – percobaan berikutnya pada tahun
1978 – 1979. Boleh jadi pembuatan yang dihasilkan dari projek tersebut adalah Structure Query
Language ( SQL ), sekarang menjadi standar akses database di Amerika maupun dunia
internasional.
System R tidak mendapat menyakinkan managemen IBM untuk meninggalkan produk sekarang dan
beralih ke relational database. IBM dan pelanggannya masih berkeyakinan untuk menggunakan
2013 Pemrograman Basis Data dan SQL Modul 01 Pusat Bahan Ajar dan eLearning
4 Team Dosen http://www.mercubuana.ac.id
teknologi IMS. Memerlukan usaha dari yan dibiayai pemerintah untuk membuktikan bahwa relational
database dapat menjadi produk yang dapat diperdagangkan.
1.2.2. INGRES
Pada tahun 1973, tentang kapan System R mulai di pakai di IBM, 2 orang ilmuwan dari Universitas
California ( UC – Berkeley ). Michael Stonebraker dan Eugene Wong, menjadi tertarik untuk
melakukan penelitian pada relational database. Awalnya, mereka mengumpulkan dana untuk mendisain
system data grafikal untuk group ekonomi Berkeley ( nama Ingres digunakan untuk mewakili sistem
grafik interaktif dan pencarian data ). Untuk mendapat dukungan lebih jauh, Stonebraker
melakukan pendekatan pada Advanced Reseach Projects Agency ( DARPA ), yang sebelumnya
merupakan sumber dana untuk penelitian dan pembangunan system komputer. Baik DARPA maupun
Office of Naval Reseach ( ONR ) tidak mendukung Ingres, namun mereka telah mendukung penelitian
database di tempat lain.
Stonebraker lalu memperkenalkan idenya ke perusahaan lain, dan atas pertolongan Wong dan teman
dari Berkeley, Lotfi Zadeh, yang mendapat dukungan dari NSF dan 3 wakil dari militer ( Air Force
Office of Scientific Research, the Army Research Office, dan Navy Electronic Systems Command ).
Pengalaman dari pencarian dana yang baik untuk Ingres adalah pembelajaran dalam membuat
proposal dan pengirimannya.
Setelah mendapat dana, Ingres dibangun, sekitar pertengahan 1970 an, prototype system relation
database dibuat yang mempunyai kesamaan dengan System R ( IBM ) tetapi mempunyai perbedaan
pada perangkat keras dan system operasi. Ingres mempunyai persamaan evolusi dengan Sistem R,
pada fase pertama demonstrasi solusi pada tahun 1974 kemudian diikuti oleh beberapa revisi untuk
membuat pemeliharaan kode lebih baik. Ingres kemudian disebarkanpada komunitas kecil pengguna,
baik di dalam maupun di luar akademik, yang memberi input balik pada group pembuat. Proses
penyebaran selanjutnya dengan menggunakan mesin DEC di universitas. Anggota dari team projek
menulis ulang prototype Ingres secara berulang dalam tahun itu dengan menggabungkan beberapa
pengalaman, pendpat balik dari pengguna, dan ide – ide baru. Ingres juga mempunyai bahasa sendiri,
QUEL, yang mempunyai kesamaan, dan mempunyai perbedaan dari produk IBM SQL ( Stonebraker,
1976, 1980 ).
Teknologi Ingres menyebar ke sektor komersial melalui 3 saluran utama yaitu kode, individu, dan
pulikasi. Berbeda dengan projek IBM, Ingres source code tersedia di masyarakat umum, kurang lebih
1000 salinan telah didistribusikan ke seluruh dunia jadi ilmuwan komputer dan programmer dapat
mempunyai pengalaman dengan system dan dapat dimodifikasi seusai dengan kebutuhan. Michael
Stonebraker mendirikan Ingres Corporation ( dibeli oleh Computer Associates pada tahun 1994 )
untuk memperdagangkan kode Berkeley secara langsung. Robert Epstein, kepala programer dari
Ingres pada tahun 1970, pindah ke Britton- Lee Incorporated dan akhirnya Sybase. Baik Britton-Lee
atau Sybase menggunakan ide dan pengalaman dari pemikiran orisinil Ingres, dan beberapa agen
pemerintah merupakan pelanggan dari kedua perusahaan tersebut. Computer Associates
mengeluarkan versi produk Ingres pada tahun 1980.
2013 Pemrograman Basis Data dan SQL Modul 01 Pusat Bahan Ajar dan eLearning
5 Team Dosen http://www.mercubuana.ac.id
Mengikuti pergerakan ilmuwan Ingress melalui komunitas database yang menyebarkan teknologi lebih
jauh. Jerry Held dan Carol Youseffi pindah dari UC-Berkeley ke Tandem Computer Incorporated, di
mana mereka membuat system relational, yang merupakan awal dari NonStop SQL. Sampai
bergabungnya Kleiner, Perkins, Caufield & Byers pada tahun 1988. Held adalah senior vice president
teknikal di Oracle, di mana dia memimpin perjuangan perusahaan database tersebut. Paula Hawthorn
pindah dari Ingres ke Britton Lee ( sama seperti Michael Ubell ) dan akhirnya menjadi pendiri dari
Illustra Information Technology Incorporated, sekarang merupakan bagian dari Informix.
Stonebraker sendiri bekerja untuk Ingres Corporation, Illustra dan Informix. Alumni Ingres yang
lain pindah ke AT&T, Hewlett-Packard Company ( HP ), IBM dan Oracle, membawa semua pelajaran
dari Ingres.
Kesuksesan dari SQL selalu menimbulkan kecemburuan di tubuh IBM, yang dapat mengambil
teknologi bahasa SQL pada tahun berikutnya dan ini terjadi. Oracle yang didirikan oleh Larry Ellison
(1977) membuat dan mula menjual produk SQL yang kompatibel sebelum IBM menjual produk SQL
ke pasar. Ellison belajar dari penjualan SQL melalui publikasi yang dilakukan projek team System R.
IBM memaksakan untuk membuat system SQL / DS di bawah ancaman produk kompetitif dari
perusahaan database yang ada, seperti Software AG, perusahaan Jerman. Dan perusahan yang
belum berpengalaman seperti Informix dan Ingres, yang juga memperkenalkan system relational.
Teknologi System R dan Ingres bukan satu satunya usaha relational database dari buah hasil kerja
Cood. Penelitian lain di Universitas Toronto, IBM di Inggriss, Universitas Utah dan Universitas
Wiconsin mempunyai kontribusi juga. Menjadi sebuah kenyataan bahwa model relational mempunyai
limitasi, terutama pada data yang kompleks. Pada tahun 1982, projek Ingres berakhir dan pada tahun
1985 dirubah menjadi Postgress di Universita California – Berkeley, yang merupakan perpanjangan
dari penambahan objek relation model. Perubahan ini bertepatan dengan DARPA yang merekrut
program manager untuk database pertama kali, yang membiayai Postgres. Projek ini menjadi bagian
dari usaha untuk perpustakaan digital dan penelitian database.
Tahun yang menonjol untuk model relational ada tahun 1980, ketika produk SQL/DS dari IBM
memukul pasar untuk mainframe, pemasok kecil mulai menjual generasi kedua system relational
dengan pemasaran yang sukses, dan Codd mendapat penghargaan dari Assocation for Computing
Machinery’s ( ACM ) . Sistem Relational memasuki jamannya.
Pemerintah Amerikas Serikat mempunyai peranan yang penting dalam perkembangan relational
database. Pada awalnya pemerintah mempunyai misi untuk membuat pasar baru untuk teknologi
dengan memberikan insentif pada inovasi produk. Kebutuhan Departemen Sensus Penduduk pada
proses pengumpulan informasi akhirnya menghasilkan otomisasi dari sebuah komputer. Keterlibatan
dunia academic juga mempunyai peranan yang besar dalam menyumbangkan atau memperbaharui
kemajuan dari teknologi database.Pada akhirnya perkembangan database juga tidak luput dari
perusahaan database yang bersaing satu dengan yang lain untuk mendapatkan pangsa pasarnya.
Oracle database, sampai saat ini tetap memimpin teknologi database.
Tahun Keterangan
2013 Pemrograman Basis Data dan SQL Modul 01 Pusat Bahan Ajar dan eLearning
6 Team Dosen http://www.mercubuana.ac.id
1964 Charles Bachman dari General Electric mengajukan model jaringan dengan
record data dihubungkan secara bersama – sama,
1965 North American Aviation’s Space Division dan IBM membuat pendekatan
kedua berdasarkan model hirarki. Dalam hal ini, data ditampilkan dalam
bentuk tree ( pohon ),
1969 Produk IBM berdasarkan model hirarki dipasarkan dengan nama Information
Managemetn System ( IMS )
1970 Untuk pertama kali konsep relational database dijabarkan oleh Dr. Edgar F.
Codd melalui artikel penelitian IBM publikasi yang berjudul “System R4
Relational.”
1979 Relational Software, Incorporated ( RSI ) didirikan dan me-release Oracle
V.2 sebagai relasional database pertama.
1985 Oracle menyatakan 1000 relasional database di pakai pelanggannya.
1983 Relational Software Incorporated dirubah namanya menjadi Oracle
Corporation.
1985 Oracle mengumumkan bahwa databasenya dapat berjalan lebih dari 30
platform.
1986 Oracle support model Client / Sever
1988 Oracle memasuki pasa ERP ( Enterprise Resources Planning ) – Oracle
Financial
1989 Oracle database versi 6 diluncurkan. Untuk pertama kalinya PL / SQL
diperkenalkan.
1993 Oracle database versi 7.0.
1997 Oracle pertama kali mendukung object pada database yang dikenal dengan
nama Object Relational Database Management System ) – Oracle 8
1999 Oralce memasuki model internet. Salah satu kemampuan yang besar adalah
mendukung java pada oracle database.
2000 Perusahaan Oracle tidak mendukung database management system saja
tetapi pembangunan semua lini aplikasi. Application Server dapat dijalankan
di arsitektur 3 tier client / server
2001 Oracle 9iDB Direlease.
2003 Oracle Grid diperkenalkan.
2013 Pemrograman Basis Data dan SQL Modul 01 Pusat Bahan Ajar dan eLearning
7 Team Dosen http://www.mercubuana.ac.id
Daftar Pustaka
Alan Denis, Barbara Haley Wixon, David Tagerden, System Analys and Design : an Object –
Oriented Approach with UML 2.0, John Willey and Sons, 2005
Henry C. Lucas Jr., The Analysis, Design and Implementation of Information Systems 4 th,
McGraw Hill, 1992
Satzinger, Jackson, Burd, Object-Oriented Analysis and Design with the Unified Process,
Course Technology, 2005
Simon Bennet, Steve McRobb and Ray Farmer, Object-Oriented System Analysis and Design
Using UML, McGraw Hill, 2006
Wendy and Michael Boggs, UML with Rational Rose 2002, Sibex Inc., 2002
2013 Pemrograman Basis Data dan SQL Modul 01 Pusat Bahan Ajar dan eLearning
8 Team Dosen http://www.mercubuana.ac.id
MODUL PERKULIAHAN
PEMROGRAMAN
WEB
02
Ilmu Komputer Sistem Informasi 87007 Team Dosen
Abstract Kompetensi
SDLC, RAD, Design Tersturktur, Class Memahami siklus pengembangan
dan Object sistem, memahami metodhologi
pengembangan sistem, mengenal UML
2013 Pemrograman Basis Data dan SQL Modul 01 Pusat Bahan Ajar dan eLearning
1 Team Dosen http://www.mercubuana.ac.id
DATABASE
2.1. PENGENALAN DATABASE
Istilah database mungkin telah umum di dengar kalangan akademik maupun masyarakat teknologi
informasi. Database pada awalnya timbul karena adanya kebutuhan seperti pencatatan data dalam
jumlah besar ( Lihat Sejarah Database ). Jikalau hal itu dilakukan oleh seorang manusia tentu
memakan waktu yang lebih lama daripada kalau kita menggunakan teknologi komputer. Database
dapat diibaratkan sebuah lemari besar di mana di dalamnya terdapat banyak rak – rak yang berisikan
dokumen – dokumen. Sebagai Ilustrasi adalah jikalau kita pergi ke perpustakaan maka pertama kali
yang kita lakukan adalah melihat daftar buku yang hendak kita cari, kemudian di dalam daftar buku
tersebut terdapat nomor yang mengidentifikasikan letak buku tersebut. Berdasarkan no. buku
tersebut kita menuju lemari dan rak yang berisikan buku yang kita inginkan. Ilustrasi yang lain
adalah ketika kita hendak mencari nama pelanggan pada buku catatan pelanggan. Biasanya catatan
tersebut terdiri dari no. pelanggan, nama, no. telpon dsb. Berdasarkan catatan tersebut dapatlah
kita mencari pelanggan yang kita inginkan. Sebenarnya jika kita teliti lebih dalam, biasanya
pencatatan itu hanya berupa 2 dimensi yaitu baris dan kolom kemudian yang kita kenal dengan nama
tabel.
Berawal dari konsep yang di atas, timbul pemikiran bagaimana jikalau di digitalisasi yaitu meminta
bantuan mesin untuk membantu manusia melakukan pencatatan. Berawal dari hal yang sederhana
akhirnya terciptalah mesin komputer pada tahun 1890 yang melakukan pencatatan dengan
menggunakan teknologi komputer ( punch card ).
Jadi secara harafiah arti dari database adalah sistem penyimpanan data secara elektronik. Di sini
terlihat dari proses manual ke otomatisasi. Sedangkan sistem di sini menunjukkan sesuatu yang
diolah secara teratur sehingga memudahkan seseorang / pengguna untuk mencari data yang
diinginkannya. Jadi kesimpulannya dari penggunaan database adalah memudahkan manusia untuk
melakukan proses pengolahan data.
Dalam proses selanjutnya pengguna dapat membuat tabel baru, mengisi data baru ke dalam tabel,
mengedit data, menghapus data bahkan menghapus tabel tersebut. Intinya adalah tergantung dari
kebutuhan pengguna.
Pada awal perkembangan database,data yang disimpan ke dalam database dalam bentuk tabel namun
data tersebut berdiri sendiri – sendiri seperti tabel karyawan, tabel pelanggan, dll. Pencarian data
dalam tabel dilakukan dengan membaca secara berurutan. Jikalau data banyak maka proses pencarian
akan sangat lama. Oleh karena itu tabel yang berdiri sendiri – sendiri tersebut kita sebut dengan
istilah flat – file.
2013 Pemrograman Basis Data dan SQL Modul 01 Pusat Bahan Ajar dan eLearning
2 Team Dosen http://www.mercubuana.ac.id
2.2.1. DATA
Sebuah entity mungkin mempunyai 1 attribute yang unik dari entity yang lainnya. Sebagai contoh
no.penerbit untuk menunjukkan sebuah buku. No. Penerbit disebut dengan key attributes.
2.2.2. DATABASE
Secara umum definisi dari database adalah berbagi ( shared ), penyimpanan yang saling terhubung (
integration collection ) , kumpulan ( repository ) yang terintegrasi dari data. 2 kata yang menitik –
beratkan pada pendefinisian dari database adalah berbagi ( shared ) dan yang saling terhubung (
integrated ). Berbagi ( shared ) berarti beberapa pengguna dapat meng-akses data di dalam
database secara bersama – sama. Yang terhubung ( integrated ) berarti menghilangkan data yang
terduplikasi ( informasi yang ditulis lebih dari 1 kali ). Sebagai contoh informasi tentang data
2013 Pemrograman Basis Data dan SQL Modul 01 Pusat Bahan Ajar dan eLearning
3 Team Dosen http://www.mercubuana.ac.id
mahasiswa mungkin saja tersebar di berbagai komputer namun jikalau diletakkan dalam 1 server data
mahasiswa itu di akses secara bersama – sama oleh pengguna maka dapat dikatakan database.
DBMS adalah sebuah piranti lunak yang mengatur penyimpanan dan akses data di dalam database.
Tentunya hal ini di atur secara otomotis – berdasarkan sistem informasi management. Kata
management meliputi beberapa fungsi yang meliputi keamanan, akses secara bersama – sama, dan
perbaikan. Pengguna dan program meng-akses dan menyimpan data dengan berinteraksi melalui
DBMS.
Kebanyakan dari DBMS mempunyai beberapa cara untuk menyimpan data pada alat penyimpanannya,
seperti bagaimana data di atur dalam disk, bagaimana cara meng-aksesnya, dan seterusnya dan
semuanya berinteraksi dengan level internal dari database.
DBMS bertanggungjawab dalam membagi aplikasi atau pengguna ( sesuai dengan hak akses ) dari
keruwetan level internal dan menampilkan secara mudah, dalam tampilan logika dari sebuah data.
Tujuan dari semua database adalah memberikan dukungan data fisik yang berdiri sendiri ( physical
data independent ). Istilah lain adalah penampilan luar ( eksternal ) yaitu bagaimana menampilkan
data kepada masing – masing pengguna.
Database juga mempunyai sebuah metadata ( data dictionary ) yang berfungsi untuk menyimpan
informasi tentang database dan objek – objek yang ada di database.
Penampilan konsepsual data di mana pengguna melihat adalah berdasarkan model yang disebut dengan
database model. Database model mendefinisikan cara menampilkan entity, attribute dan relationship
( hubungan ) secara terstruktur. Menghubungkan antara konsepsual data dengan data fisik ada
tanggungjawab dari DBMS.
Ada 3 data model database yang sampai saat ini digunakan yaitu
a) Hirarki Model ( Hierarcy Model ) : menampilkan data secara hirarki. Sebagai contoh yang
mudah adalah ketika melihat struktur organisasi ataupun jikalau kita membuka window eksplorer.
Penerbit
Buku
2013 Pemrograman Basis Data dan SQL Modul 01 Pusat Bahan Ajar dan eLearning
4 Team Dosen http://www.mercubuana.ac.id
Penulis
Karena berstruktur hirarki maka jikalau kita hendak melihat data penulis maka terlebih dahulu
kita harus membuka data penerbit,
Entity anak hanya bisa mempunyai 1 induk entity
Sebuah entity tidak bisa dihubungkan lebih dari 1 entity
Jadi secara natural hubungan hirarki adalah berdasarkan one to one dan one to many
b) Model Jaringan ( network model ) mempunyai sedikit kelebihan dari model hirarki.
Pada model jaringan, sebuah entity dapat mempunyai lebih dari 1 entity induk, dan beberapa
buah entity anak dapat mempunyai beberapa buah entity induk. Namun demikian model jaringan
masih mempunyai masalah hubungan many to many secara langsung. Sebagai contoh : jikalau kita
hendak mencari semua buku yang diterbitkan oleh Bill Gates, lalu dengan menggunakan pointer
yang mewakili hubungan penerbit untuk mencari buku yang diterbitkan oleh penerbit. Hal ini
memberikan limitasi pada data fisik secara independen. Ketika hubungan berubah, aplikasi
program jika ikut berubah.
c) Model Hubungan ( Relational Model ) diusulkan oleh E.F Codd dalam jurnal ilmiahnya “A
Relational model of data for large shared data banks” pada tahun 1970. Codd menjelaskan
penampilan data dipaksakan dalam bentuk konsep hubungan matemateka ( berdasarkan group ).
Pada model Codd, data ditampilkan dalam bentuk tabel, dimana setiap tabel mempunyai kolom dan
baris. Hubungan yang lain adalah berdasarkan kolom unik ( primary key ) dan kolom bukan unik (
foreign key ). Setiap table harus mempunyai 1 kolom unik ( primary key ) untuk membedakan 1
entity dengan entity lainnya ( entity integrity ). Kolom bukan unik ( foreign key ) tidak boleh
kosong ( null ) – Referential Integrity.
Digunakan untuk membuat dan memanipulasi objek – objek dan data di dalam database. Interaksi
bahasa langsung dengan database disebut query language. Sedangkan bahasa yang digunakan di
dalam program di sebut dengan sublanguage. Ada beberapa komponen bahasa database yaitu
a. Data Definition Language ( DDL ) seperti CREATE, ALTER, DROP, RENAME, TRUNCATE,
ANALZE, GRANT, REVOKE.
b. Data Manipulation Language ( DML ) seperti DELETE, INSERT, SELECT, UPDATE.
c. Transaction Control Statements seperti COMMIT, ROLLBACK, SAVEPOINT, SET
TRANSACTION
d. Session Control Statements seperti ALTER SESSION, SET ROLE
e. System Control Statements seperti ALTER SYSTEM
2013 Pemrograman Basis Data dan SQL Modul 01 Pusat Bahan Ajar dan eLearning
5 Team Dosen http://www.mercubuana.ac.id
f. Embedded SQL Statements merupakan kombinasi dari DDL, DML, Transacation Control
Statements dalam sebuah bahasa data sub langauge seperti DECLARE, CURSOR, OPEN, CLOSE,
DECLARE DATABASE, CONNECT, DECLARE STATEMENT, DESCRIBE, WHENEVER,FETCH,
PREPARE,EXECUTE, EXECUTE IMMEDIATE.
a. Relational Algebra yaitu bahasa yang berdasarkan kumpulan operator yang meliputi tradisional
operator ( UNION, INTERSECTION, DIFFERENCE ) dan operator khusus sepert (
PROJECTION,RESTRICTION, JOIN, PRODUCT, DIVISION ).
b. Relation Calculus berdasarkan predikat kalkulus yang digunakan untuk hubungan data . Gagasan
dasar dari relational calculus adalah query variable yaitu variabel yang menghubungkan beberapa
baris dalam tabel. Query ini berdasarkan target yang mendefinisikan spesifik kolom sebagai hasil
dan kualifikasi yaitu memilih baris dari target tabel berdasarkan ekspresi dari query variabel
tersebut. Contoh dalam kalimat adalah carilah buku yang mempunyai halaman lebih dari 500.
Penulisan bahasa databasenya adalah sebagai berikut
RANGE OF B IS BOOKS.
RETRIEVE ( B.ISBN,B.TITLE ) WHERE B.LENGTH > 500
Bahasa database ini disebut QUEL yang diimplementasikan Ingres System. Produk IBM adalah
QBE ( Query By Example ) dalam bahasa SQL.
Bahasa ketiga diusulkan oleh Boyce pada tahun 1974. Digunakan untuk pengguna yang tidak
mengerti tentang query variabel. Contoh penulisan dalam bahasa databasenya adalah
d. Relational Completeness
Ketika pertama kali Codd mengusulkan relational kalkulus. Beliau mendefinisikan bahasa
relational databasenya menjadi relationally complete. Relational Complete mempunyai kelebihan
untuk mengekspresikan relational kalkulus. Kerapkali, definisi ini merupakan perpanjangan yang
meliputi pengambilan informasi dari database dengan 1 kalimat. Dengan kata lain, jika informasi
dapat di ambil dari tabel database, query yang digunakan untuk mengambil informasi dapat
diformulasikan dengan menggunakan bahasa yang bebas. Codd, juga memperlihatkan bahwa
relational algebra merupakan relationally complete. Kebanyakan dari bahasa yang dituju baik itu
SQL dan QUEL adalah relationally complete.
2013 Pemrograman Basis Data dan SQL Modul 01 Pusat Bahan Ajar dan eLearning
6 Team Dosen http://www.mercubuana.ac.id
Aturan Keterangan
0 Relational DBMS harus dapat mengatur database secara keseluruhan
dengan menggunakan kapasitas relational.
1 The Information Rule
Semua informasi yang ada di relational database ( meliputi tabel dan
kolom ) harus mewakili nilai dalam tabel.
2 Guarantedd Access
Setiap nilai di dalam relational database harus dapat di akses dengan
menggunakan kombinasi dari nama tabel, nilai dari kolom unik ( primary
key ), dan kolom yang lain
2013 Pemrograman Basis Data dan SQL Modul 01 Pusat Bahan Ajar dan eLearning
7 Team Dosen http://www.mercubuana.ac.id
12. Non – Subversion
Harus tidak bisa dilewatkan aturan integritas yang didefinisikan melalui
bahasa database dengan menggunakan level bahasa terendah.
Bahasa SQL adalah sebuah bahasa tingkat tinggi, beriorientasi pada group data, non prosedur untuk
relational database. Disebut bahasa tingkat tinggi karena memakai bahasa Inggris. Disebut orientasi
pada group data ( tabel ) karena berbeda dengan bahasa lain yang hanya mempunyai kapabilitas
record. Bersifat non prosedur karena memberikan apa yang hendak kita inginkan dari informasi,
bukan berdasarkan dengan cara apa kita harus mengambil informasi.
SQL dibuat pada tahun 1970 – an di IBM San Jose Research Laboratories yang merupakan bagian
dari projek System R. Bahasa SQL menjadi sangat penting dalam penggunaannya karena ada 2 alasan
a. Bersifat portabel karena aplikasi SQL yang dibuat di minikomputer bisa langsung digunakan di
PC,
b. Prosedur bahasa database yang dibuat dibuat di PC, bisa dipakai untuk mengambil data di
minikomputer karena adanya persamaan bahasa.
Standarisasi dari bahasa SQL dimulai dari tahun 1986 dari American National Standards Institute
( ANSI ) – X3.135-86 dan pada tahun 1987 oleh International Standard Organization ( ISO ). Tahun
1989 , ISO dan ANSI mempublikasikan SQL Standard yaitu SQL-89 ( SQL 1 ) diteruskan SQL-92
dan SQL-99.
Bahasa SQL didasarkan pada penggunaan untuk mendefinisikan dan memanipulasi objek – objek pada
database namun supaya dapat dimanfaatkan pada aplikasi dibuat pendekatan yang kita kenal dengan
nama Host Language Interface yang digunakan untuk bahasa mesin mainframe seperti COBOL, C,
PL/1 sedangkan dalam minikomputer kita kenal dengan nama Applications Programming Interface (
API ). Ada beberapa pendekatan untuk interface ( layer ), yaitu
Embedded Approach. Setiap perintah dalam program untuk mengakses database di tulis dalam
satu kesatuan dengan program. Biasanya dengan menggunakan karakter khusus seperti
$.Kemudian program tersebut di compile.
Library Approach. Dalam hal ini database telah menyediakan fungsi – fungsi khusus untuk
memanggil perintah – perintah SQL yang diinginkan programmer.
Approaches Compared. Menggunakan kelebihan – kelebihan dari Embedded dan Library
Approach.
Kelebihan dari pendekatan Embedded adalah
2013 Pemrograman Basis Data dan SQL Modul 01 Pusat Bahan Ajar dan eLearning
8 Team Dosen http://www.mercubuana.ac.id
Spesifikasi SQL yang dibuat oleh programer dalam source code adalah sama dengan SQL
yang digunakan pada level interface ad – hoc. Ini berarti query yang digunakan akan berjalan
dengan baik karena sama.
Kemampuan untuk dipakai dalam beberapa platform sejauh alat compile yang dipakai sama.
Kekurangan dari pendekatan Embedded adalah
Proses compile dan precompile yang dibutuhkan prosedur pada aplikasi. Hal ini tentunya tidak
praktis bagi programer dan programer diharuskan untuk terbiasa dengan source code (
precompiler ). Karena original source code sering dirubah maka berbeda jauh dengan original
source code.
Dibutuhkan tambahan gagasan ( SQL dan bahasa programming ) untuk mendukung akses
database. Karena SQL adalah berdasarkan group data dan kebanyakan aplikasi memerlukan
akses baris maka harus menggunakan cursors pada Embedded SQL.
Tidak portabel, sehingga tidak multi platform. Namun jikalau aplikasi menggunakan DBMS
dengan O/S dan platform yang sama maka dengan mudah dipindahkan
Tidak perlu dicompile ulang seperti yang digunakan pendekatan Embedded.
Penggunaan call function memudahkan dalam penulisan aplikasi.
2.7. OLTP ( Online Transaction Processing ) dan OLAP ( Online Analytical Processing )
2.7.1. OLTP ( Online Transaction Processing ) adalah proses data yang digunakan untuk transaksi
sehari – hari. Ciri – Ciri dari database OLTP adalah
2.7.2. OLAP ( Online Analtycal Processing ) adalah proses data yang digunakan analisa data
seperti trend penjualan, umur, dll. Ciri – Ciri dari database OLAP adalah
2013 Pemrograman Basis Data dan SQL Modul 01 Pusat Bahan Ajar dan eLearning
9 Team Dosen http://www.mercubuana.ac.id
Sebuah objek kerapkali dipertimbangkan sebagai presentasi dari benda – benda nyata di dunia.
Objek – Objek mengetahui apa yang harus dikerjakan, seperti objek karyawan dapat berbicara untuk
menghitung potongan gaji. Objek Grafikal dapat berbicara untuk mengetahui bagaimana
menggambar, dll. Contoh objek – objek yang lain dalam dunia nyata seperti pelanggan,perusahaan,
sekolah, dll.
“ Sebuah Objek adalah sebuah paket piranti lunak yang mengandung sekumpulan prosedur –
prosedur ( metodologi ) yang saling berhubungan dan data ( variables ). “. --- David Taylor’s
Object Oriented Technology: A Manager’s Guide [ Massachusetss: Addison-Wesley Publishing
Company, 1981 ].
“Sebuah Objek mempunyai bagian, karakter, dan identitas; Struktur dan karakter dari objek
yang mirip didefinisikan pada objek umum kelas; dan dapat dipertukarkan.” --- Grady Booch’s
Object Oriented Analysis and Design with Applications.
Attribute
Ship
Check Po_No
Status Cancel
Custinfo
Line_ite
ms
Hold
Method
2013 Pemrograman Basis Data dan SQL Modul 01 Pusat Bahan Ajar dan eLearning
10 Team Dosen http://www.mercubuana.ac.id
Mempunyai kemampuan untuk menyembunyikan data dan proses yang berada di dalam objek
tersebut ( encapsulation ),
Mempunyai kemampuan untuk berinteraksi dengan objek yang lain (messages, interfaces).
Mampu mengetahui perbedaan dengan objek yang lain tanpa analysis,
Mampu memterjemahkan perintah yang sama dengan cara yang berbeda ( messages, method
overloading ) – polymorphism.
2.9. JARINGAN
Salah satu komponen penting di dalam teknologi database adalah jaringan. Tanpa jaringan maka data
antara 1 komputer dengan komputer yang lain tidak dapat dihubungkan. Di dalam teknologi jaringan
secara umum kita kenal dengan 2 istilah
LAN ( Local Area Network ), yaitu komunkasi jaringan yang memungkinkan komunikasi data
antara peralatan elektronik di dalam suatu area geografi yang kecil. Peralatan elektronik di sini
dapat berbentuk komputer, telepon,dll. Tipikal penggunaan biasanya antara gedung.
WAN ( Wide Area Network ), yaitu komunikasi jaringan yang memungkinkan komunikasi data
antara peralatan elektronik di dalam area geografi yang luas, seperti antara daerah atau antar
negera.
Kerangkan umum yang biasa digunakan dalam jaringan adalah menggunakan model 7 layers - OSI (
Open Standard International ) yang dibuat oleh International Standards Organization ( ISO ) yang
bermarkas di Paris. Tujuan dari OSI adalah untuk mendefinisikan berbagai fungsi dalam berbagai
layer yang menjembati fasilitas komunikasi dari berbagai peralatan elektronik dari berbagai
pemasok. Tujuan dari layer adalah untuk melindungi layer yang lebih tinggi dari layer yang lebih
rendah. Sebagai contoh kabel optik yang bermain pada layer fisik. Secara teori tidak akan
mempengaruhi layer yang di atasnya. Ke 7 layer tersebut adalah
2013 Pemrograman Basis Data dan SQL Modul 01 Pusat Bahan Ajar dan eLearning
11 Team Dosen http://www.mercubuana.ac.id
Application
Application
Layer
Presentation
Layer
Session
Layer
Transport
Layer
Network
Layer
Data Link Layer
Physical Layer
Keterangan
Physical Layer adalah layer yang paling rendah yang berhubungan dengan hubungan
elektris,signal yang memungkinkan komunikasi data terjadi. Layer yang biasa digunakan adalah
RS-232C, yang mendefinisikan berbagai macam pin dan signal dari fisik konektor. Standar yang
lain adalah RS-449 dan X.21 ( Eropa ).
Data Link Layer adalah layer yang berkonsentrasi pada format pesan data, mengatur arus data
dari dalam dan keluar node, dan menambahkan alamat yang benar dari sumber dan node yang
menjadi tujuan. Protokol yang biasa digunakan meliputi High – Level Data Link Control ( HDLC )
dan Bisynchronous. Pada mesin mikrokomputer kita kenal dengan istilah Token Ring, Ethernet
dan Arcnet. Biasanya di install pada Client ( workstation ).
Network Layer digunakan untuk memberi solusi pada konflik alamat dan memutuskan bagaimana
data paket dikirim melalui jaringan berdasarkan kondisi dari berbagai macam jaringan yang ada.
Transport Layer bertanggungjawab untuk memastikan bahwa pesan alamat dimasukkan atau
dibuka ke dalam atau keluar dari paket sebelum diteruskan ke layer yang lebih tinggi. Jikalau
terjadi erro maka Transport Layer akan mencari jalur alternatif. Protokol yang kita kenal di sini
adalah TCP / IP ( Transmission Control Program / Internet Protocol ) dan ISO Transport Class 4
( TP 4 ).
Session Layer bertanggung jawab untuk membangun hubungan antara komputer dalam sebuah
jaringan yang memungkinkan aplikasi berkomunikasi.Fungsi yang di handle dalam layer ini dalah
pengenalan nama, logging, keamanan , administrasi , dll.
Presentation Layer berkonsentarsi pada presentasi data seperti printer dan pada
komputer.Fungsi yang terkait pada layer ini seperti format file, mail, management database, dll.
2013 Pemrograman Basis Data dan SQL Modul 01 Pusat Bahan Ajar dan eLearning
12 Team Dosen http://www.mercubuana.ac.id
2.9.1. TOPOLOGI JARINGAN
Tujuan mempelajari topologi jaringan adalah untuk mengetahui bagaimana sebuah ditransmisikan baik
itu dari server ataupun ke client. Beberapa tipikal topologi jaringan adalah sebagai berikut :
Star Networks
Star Networks adalah jaringan yang paling tua dan umum dipakai. Sebagai contoh penggunaan Star
Networks adalah pada penggunaan telpon. Pada saat kita telpon dari / ke telpon yang lain. Maka nada
akan dikirimkan ke pusat lalu baru dikirim ke telpon yang lain. Kekurangan dari jaringan ini adalah
jika pusat rusak maka sistem tidak bisa berjalan.
Client
Client
Bus Networks
Bus Networks adalah berbagi medium untuk semua client. Setiap client akan memeriksa apakah
medium dipakai oleh client yang lain, jika tidak maka medium akan di pakai oleh client tersebut.
Keunggulan dari topologi star networks adalah jika terjadi kerusakan pada salah satu client, tidak
akan merusak sistem.
Ring Networks
Ring Network menggunakan sistem star maupun bus. Sebagai ilustrasi, jika sebuah client mengirim
data maka data tersebut akan dikirim ke jaringan ring. Selanjutnya dikirim ke client yang dituju
2013 Pemrograman Basis Data dan SQL Modul 01 Pusat Bahan Ajar dan eLearning
13 Team Dosen http://www.mercubuana.ac.id
dengan cara membuat dupikasi data. Jika data telah selesai dikirim maka data akan kembali ke client
yang mengirim.
Client
Client Client
Server
Client
1. Proto Client / Server, PC pengguna menjalankan aplikasi melalui terminal emulasi. Pengguna tidak
mempunyai kuasa untuk merubah bentuk tampilan. Semua data di ambil dari mesin mainframe
atau mini. PC pengguna tidak pandai.
2. Generasi Client / Server pertama. Generasi yang pertama ini di rancang untuk mengijinkan
pengguna dalam menjalankan dan memanipulasi data dari GUI pada PC. Kebanyakan aplikasi
generasi pertama menempatkan prosedur logika pada client dan menggunakan server hanya
sebagai tempat menyimpan data.
3. Generasi Client / Server ketiga. Ciri – ciri dari generasi kedua ini adalah mempunyai pengguna
yang banyak, proses aplikasinya terdistribusi, datanya terdistribusi dan mempunyai sifat multi-
tier arsitektur dimana aplikasi bersifat modular dan fleksibel untuk dirubah.
Pengguna database sangat bervariasi. Namun jika digolongkan dalam tipikal pengguna dapat
didefinisikan sebagai berikut :
2013 Pemrograman Basis Data dan SQL Modul 01 Pusat Bahan Ajar dan eLearning
14 Team Dosen http://www.mercubuana.ac.id
a. Database Administrator
b. Security Officers
Dalam kasus tertentu, Petugas Keamanan Data bisa lebih dari satu. Tugas utama dari petugas
keamanan data adalah mendaftarkan pengguna database, kontrol dan monitoring akses pengguna
database, dan memelihara sistem keamanan data.
c. Application Developers
Pembuat aplikasi mendesain dan mengimplementasikan aplikasi database. Ada tugas dari pembuat
aplikasi adalah
d. Application Administrators
Tugas yang dilakukan adalah melakukan tugas administrasi pada aplikasi tertentu.
2013 Pemrograman Basis Data dan SQL Modul 01 Pusat Bahan Ajar dan eLearning
15 Team Dosen http://www.mercubuana.ac.id
e. Database Users
Pengguna database berinteraksi dengan database melalui aplikasi dan alat bantu yang lain ( utility
). Beberapa tipikal tugas yang dilakukan adalah
f. Network Adminstrators
Untuk beberapa perusahaan mungkin mempunyai lebih dari 1 Network Administrator. Network
Administrator bertugas untuk menghubungkan database dengan pengguna.
a. Scalability
kemampuan menangani banyak user yang melakukan akses secara simultan tanpa berkurangnya
performance secara signifikan. Dalam dokumentasi Oracle disebutkan bahwa database Oracle
sanggup melayani puluhan ribu pengguna secara simultan.
b. Reliability
kemampuan untuk melindungi data dari kerusakan jika terjadi kegagalan fungsi pada sistem
seperti disk failure.
c. Servicebility
kemampuan untuk mendeteksi masalah, kecepatan dalam mengoreksi kesalahan, dan kemampuan
melakukan konfigurasi ulang struktur data.
d. Stability
Kemampuan untuk tidak crash karena beban kerja yang tinggi. Hal ini berkaitan dengan scability.
e. Availibility
Kemampuan dalam penanganan crash atau failure agar service dapat tetap berjalan. Misalnya
saja dengan tersedianya fasilitas pendistribusian database pada beberapa data server dan juga
pemulihan database ( recovery ).
f. Multiplatform
Dapat digunakan pada banyak sistem operasi seperti Windows, Unix, Linux dan Solaris
g. Mendukung data yang sangat besar. Menurut dokumentasi Oracle, dapat menampung sampai 512
petabytes ( 1 petabytes = 1.000.000 gigabytes ).
h. Sistem keamanan data yang cukup handal
i. Mendukung database beriorientasi objek.
j. Dapat menampung hampir semua tipe data seperti teks, image, sound, video dan time series.
2013 Pemrograman Basis Data dan SQL Modul 01 Pusat Bahan Ajar dan eLearning
16 Team Dosen http://www.mercubuana.ac.id
Daftar Pustaka
Alan Denis, Barbara Haley Wixon, David Tagerden, System Analys and Design : an Object –
Oriented Approach with UML 2.0, John Willey and Sons, 2005
Henry C. Lucas Jr., The Analysis, Design and Implementation of Information Systems 4 th,
McGraw Hill, 1992
Satzinger, Jackson, Burd, Object-Oriented Analysis and Design with the Unified Process,
Course Technology, 2005
Simon Bennet, Steve McRobb and Ray Farmer, Object-Oriented System Analysis and Design
Using UML, McGraw Hill, 2006
Wendy and Michael Boggs, UML with Rational Rose 2002, Sibex Inc., 2002
2013 Pemrograman Basis Data dan SQL Modul 01 Pusat Bahan Ajar dan eLearning
17 Team Dosen http://www.mercubuana.ac.id
MODUL PERKULIAHAN
PEMROGRAMAN
WEB
03
Ilmu Komputer Sistem Informasi 87007 Team Dosen
Abstract Kompetensi
SDLC, RAD, Design Tersturktur, Class Memahami siklus pengembangan
dan Object sistem, memahami metodhologi
pengembangan sistem, mengenal UML
2013 Pemrograman Basis Data dan SQL Modul 01 Pusat Bahan Ajar dan eLearning
1 Team Dosen http://www.mercubuana.ac.id
STRUCTURE QUERY LANGUAGE (SQL)
Ada berbagai cara untuk menjalankan perintah – perintah SQL pada produk Oracle database, yaitu :
SQL Plus adalah alat system di dalam database Oracle yang digunakan untuk menjalankan perintah –
perintah SQL. Produk ini merupakan bagian dari produk database ataupun produk development
seperti Developer / 2000, Designer / 2000. SQL Plus hanya dapat dijalankan pada system operasi
Microsoft Window XP/98/2000. Cara Menjalankan SQPLus adalah Start -> Program -> Oracle For
Windows NT -> SQL Plus 8.0
2013 Pemrograman Basis Data dan SQL Modul 01 Pusat Bahan Ajar dan eLearning
2 Team Dosen http://www.mercubuana.ac.id
SQLPlus juga dapat dijalankan melalui DOS dengan cara :
Penggunaan SVRMGRL biasanya digunakan untuk mengatur atau mengolah system database. Cara
menggunakannya adalah sebagai berikut :
2013 Pemrograman Basis Data dan SQL Modul 01 Pusat Bahan Ajar dan eLearning
3 Team Dosen http://www.mercubuana.ac.id
3.2. ODBC ( Open Database Connectivity )
Cara lain adalah dengan menggunakan ODBC ( Open Database Connectivity ). ODBC merupakan
standarisasi dari berbagai database agar dapat dijalankan oleh aplikasi lainnya. Cara
Menggunakannya
a. Start -> Settings -> Control Panel -> Administrative Tools -> Data Sources ( ODBC ).
2013 Pemrograman Basis Data dan SQL Modul 01 Pusat Bahan Ajar dan eLearning
4 Team Dosen http://www.mercubuana.ac.id
b. Tekan tombol Add -> Pilih Driver Oracle ODBC Driver
c. Ada berbagai cara untuk mengakses ODBC. Tergantung dari penggunaan aplikasi. Pada Oracle
Developer 6i dapat menggunakan Oracle ODBC Test. Adapun layar bentuk layar dari Oracle
ODBC Test adalah sbb :
2013 Pemrograman Basis Data dan SQL Modul 01 Pusat Bahan Ajar dan eLearning
5 Team Dosen http://www.mercubuana.ac.id
3.3. Alat bantu yang lain.
Pada saat ini tersedia di pasar berbagai produk alat bantu yang dapat digunakan untuk mengakses
oracle database seperti TOAD, Quest Software,dll.
3.4. Entity Relationship Diagram ( ERD )
Dalam pembuatan sistem informasi, salah satu komponen terpenting adalah dokumentasi. Semakin
kompleks sebuah sistem informasi maka dokumentasi sangat diperlukan untuk membantu pembuat
aplikasi melihat struktur proses dari sebuah aplikasi. Ada beberapa keuntungan yang lain dari adanya
sistem dokumentasi, yaitu tidak perlunya seorang pembuat aplikasi untuk berpikir dari awal dalam
membuat sistem informasi, dapat digunakan untuk pengembangan aplikasi ataupun mempercepat
pembuat aplikasi untuk menganalisa sistem informasi jika terjadi kesalahan.
Ada 3 unsur di dalam pembuatan ataupun pengembangan sistem informasi yang kemudian kita kenal
dengan nama segitiga sukses ( the triangle of success ), yaitu metode permodelan (notation), proses
( process ) dan tool ( alat bantu ) yang digunakan.
Tujuan dalam permodelan data adalah untuk mengambarkan struktur dari informasi dan menangkap
peraturan dari bisnis yang dispesifikasikan ke dalam kebutuhan pengguna. Sebuah model data
mewakili keseimbangan antara kebutuhan implementasi dari database dan kebutuhan umum dari area
bisnis yang dituju. Di dalam pasar piranti lunak, ada beberapa alat permodelan data yang dapat
digunakan, seperti ER-Win, Relational Rose, Designer / 2000, dll.
Aada beberapa metodologi pendekatan yang dapat digunakan untuk mengambarkan hubungan antar
entity ( data ), yaitu
IDEF1X. Metodologi ini dibuat oleh U.S Air Force. Sekarang banyak digunakan oleh pemerintah,
penerbangan dan industri keuangan dan beberapa industri lainnya,
IE ( Information Engineering ). Di buat oleh James Martin, Clive Finkelstein. Metodologi ini
banyak digunakan dalam berbagai macam industri.
2013 Pemrograman Basis Data dan SQL Modul 01 Pusat Bahan Ajar dan eLearning
6 Team Dosen http://www.mercubuana.ac.id
Contoh gambar dari metodologi IE ( Information Engineering ) adalah
Dalam pelajaran kuliah selanjutnya, maka metode IE ( Information Engineering ) akan dijadikan
acuan sebagai bentuk penggambaran hubungan antara 1 entity dengan entity lainnya.
Beberapa petunjuk gambar dalam metodologi IE adalah sebagai berikut :
Net8 Easy Config adalah aplikasi oracle yang digunakan untuk menghubungkan aplikasi client dengan
oracle database server. Cara menggunakannnya adalah
2013 Pemrograman Basis Data dan SQL Modul 01 Pusat Bahan Ajar dan eLearning
7 Team Dosen http://www.mercubuana.ac.id
1. Jalankan Start -> Program -> Oracle – OraHome81 -> Network Administration -> Net8 Easy
Config.
2. Setelah itu layar yang akan ditampilkan adalah sebagai berikut
Keterangan
2. Klik Next,
2013 Pemrograman Basis Data dan SQL Modul 01 Pusat Bahan Ajar dan eLearning
8 Team Dosen http://www.mercubuana.ac.id
Pilih protokol yang akan digunakan.
3. Klik Next, Isi Host Name ( Nama Server untuk oracle database ).
4. Klik Next,
2013 Pemrograman Basis Data dan SQL Modul 01 Pusat Bahan Ajar dan eLearning
9 Team Dosen http://www.mercubuana.ac.id
Keterangan
5. Klik Next, untuk melakukan test. Setelah Test selesai tekan finish untuk mengakhiri wizard net8
easy config.
SQL Plus adalah alat bantu yang dibuat perusahaan Oracle untuk menjalankan perintah – perintah
SQL. SQL Plus biasanya sudah merupakan bagian dari produk database server maupun produk
development tools yang dikeluarkan oleh perusahaan Oracle.
2013 Pemrograman Basis Data dan SQL Modul 01 Pusat Bahan Ajar dan eLearning
10 Team Dosen http://www.mercubuana.ac.id
1. Start -> Program -> Oracle – OraHome81 -> Application Development -> SQLPlus
2. Maka layar yang ditampilkan adalah
3. Klik Ok,
Dibawah ini adalah beberapa tipe data yang digunakan pada oracle database versi 8, dengan
penjelasan sbb :
2013 Pemrograman Basis Data dan SQL Modul 01 Pusat Bahan Ajar dan eLearning
12 Team Dosen http://www.mercubuana.ac.id
Daftar Pustaka
Alan Denis, Barbara Haley Wixon, David Tagerden, System Analys and Design : an Object –
Oriented Approach with UML 2.0, John Willey and Sons, 2005
Henry C. Lucas Jr., The Analysis, Design and Implementation of Information Systems 4 th,
McGraw Hill, 1992
Satzinger, Jackson, Burd, Object-Oriented Analysis and Design with the Unified Process,
Course Technology, 2005
Simon Bennet, Steve McRobb and Ray Farmer, Object-Oriented System Analysis and Design
Using UML, McGraw Hill, 2006
Wendy and Michael Boggs, UML with Rational Rose 2002, Sibex Inc., 2002
2013 Pemrograman Basis Data dan SQL Modul 01 Pusat Bahan Ajar dan eLearning
13 Team Dosen http://www.mercubuana.ac.id
MODUL PERKULIAHAN
PEMROGRAMAN
WEB
04
Ilmu Komputer Sistem Informasi 87007 Team Dosen
Abstract Kompetensi
SDLC, RAD, Design Tersturktur, Class Memahami siklus pengembangan
dan Object sistem, memahami metodhologi
pengembangan sistem, mengenal UML
2013 Pemrograman Basis Data dan SQL Modul 01 Pusat Bahan Ajar dan eLearning
1 Team Dosen http://www.mercubuana.ac.id
STRUCTURE QUERY LANGUAGE (SQL)
3.7. Data Definition Language ( DDL )
Data Definition Language ( DDL ) adalah bahasa SQL yang digunakan untuk mendefinisikan,
menghapus, memberi hak akses ataupun menganalisa objek – objek database.
a. MEMBUAT TABEL
Keterangan
2013 Pemrograman Basis Data dan SQL Modul 01 Pusat Bahan Ajar dan eLearning
2 Team Dosen http://www.mercubuana.ac.id
Contoh
Keterangan
Contoh :
c. MENGHAPUS TABEL
Digunakan untuk menghapus tabel dari database. Definisinya adalah sebagai berikut :
Keterangan
Contoh :
Definisinya adalah :
Contoh :
2013 Pemrograman Basis Data dan SQL Modul 01 Pusat Bahan Ajar dan eLearning
4 Team Dosen http://www.mercubuana.ac.id
CREATE TABEL emp_fin AS select empid,empnm from emp;
Contoh :
Definisi : RENAME nama tabel yang lama TO nama tabel yang baru;
Definisi :
Contoh :
h. CONSTRAINT
Definisi pembuatan CONSTRAINT dapat dilakukan pada saat pembuatan tabel atau pada saat
merubah struktur tabel.
2013 Pemrograman Basis Data dan SQL Modul 01 Pusat Bahan Ajar dan eLearning
5 Team Dosen http://www.mercubuana.ac.id
ALTER TABLE nama tabel ADD nama constraint ekspresi constraint
NOT NULL
Contoh :
UNIQUE
Contoh :
PRIMARY KEY
Contoh :
FOREIGN KEY
Definisi : [CONSTRAINT nama constraint FOREIGN KEY nama kolom REFERENCES nama
tabel ( nama kolom 1 ) ON DELETE CASCADE | SET NULL]
Contoh :
ALTER TABLE emp ADD CONSTRAINT c_3 FOREIGN KEY dept_id REFERENCES dept
(dept_id );
CHECK
2013 Pemrograman Basis Data dan SQL Modul 01 Pusat Bahan Ajar dan eLearning
6 Team Dosen http://www.mercubuana.ac.id
Kondisi di sini dapat berupa kondisi Perbandingan, kondisi BETWEEN, kondisi NULL, kondisi
LIKE, kondisi EXISTS
Contoh :
Definisi : [ ALTER TABLE nama tabel MODIFY CONSTRAINT nama constraint < ENABLE |
DISABLE >
Contoh :
j. MEMBUAT INDEX
Definisi :
CREATE [ UNIQUE | BITMAP ] INDEX nama index ON nama tabel ( nama kolom 1, nama kolom
2… ) ASC | DESC;
Keterangan :
k. ANALISA INDEX
Contoh :
l. DROP INDEX
2013 Pemrograman Basis Data dan SQL Modul 01 Pusat Bahan Ajar dan eLearning
7 Team Dosen http://www.mercubuana.ac.id
Definisi : DROP INDEX nama index
Konseptual
Internal
N. AKSES USER
Perintah – perintah SQL di bawah ini adalah digunakan untuk membuat, memberi hak akses
ataupun menghapus pengguna database.
a. Membuat User
2013 Pemrograman Basis Data dan SQL Modul 01 Pusat Bahan Ajar dan eLearning
8 Team Dosen http://www.mercubuana.ac.id
Definisi : CREATE USER nama user IDENTIFIED BY password;
Definisi : ALTER USER nama user ACCOUNT < LOCK | UNLOCK > atau dapat juga dibuat dengan
perintah ALTER USER nama user PASSWORD EXPIRE;
d. Menghapus User
e. Perintah GRANT
Untuk melihat semua hak akses yang dapat diberikan user dapat dilhat pada tabel
SYSTEM_PRIVILEGE_MAP dengan cara :
2013 Pemrograman Basis Data dan SQL Modul 01 Pusat Bahan Ajar dan eLearning
9 Team Dosen http://www.mercubuana.ac.id
SQL > CREATE USER ubm IDENTIFIED BY ubm;
Untuk melihat hak akses apa saja yang diberikan dapat diliha dengan menggunakan perintah :
Contoh :
2013 Pemrograman Basis Data dan SQL Modul 01 Pusat Bahan Ajar dan eLearning
10 Team Dosen http://www.mercubuana.ac.id
Untuk melihat hasil grant dapat dilihat pada tabel USER_TAB_PRIVS_RECD dengan perintah
sbb :
f. Perintah ROLE
Adalah kumpulan koleksi dari berbagai hak akses. Beberapa role telah dibuat oleh oracle
database seperti
04. SELECT_CATALOG_ROLE
08. AQ_ADMINISTRATION_ROLE
Untuk melihat hak akses pada sebuah ROLE dapat melihat tabel DBA_SYS_PRIVS dengan cara :
2013 Pemrograman Basis Data dan SQL Modul 01 Pusat Bahan Ajar dan eLearning
11 Team Dosen http://www.mercubuana.ac.id
SQL > SELECT * FROM DBA_SYS_PRIVS WHERE GRANTEE IN (‘CONNECT’,’RESOURCE’);
Contoh :
g. Perintah REVOKE
2013 Pemrograman Basis Data dan SQL Modul 01 Pusat Bahan Ajar dan eLearning
12 Team Dosen http://www.mercubuana.ac.id
Digunakan untuk membatalkan hak privileges, objek atau role pada suatu user atau role
tertentu.
Definisi :
REVOKE { system_privilege } | { role_name } | < all privileges > FROM < {user_name } | {
role_name } | PUBLIC >;
Contoh :
2013 Pemrograman Basis Data dan SQL Modul 01 Pusat Bahan Ajar dan eLearning
13 Team Dosen http://www.mercubuana.ac.id
2013 Pemrograman Basis Data dan SQL Modul 01 Pusat Bahan Ajar dan eLearning
14 Team Dosen http://www.mercubuana.ac.id
Daftar Pustaka
Alan Denis, Barbara Haley Wixon, David Tagerden, System Analys and Design : an Object –
Oriented Approach with UML 2.0, John Willey and Sons, 2005
Henry C. Lucas Jr., The Analysis, Design and Implementation of Information Systems 4 th,
McGraw Hill, 1992
Satzinger, Jackson, Burd, Object-Oriented Analysis and Design with the Unified Process,
Course Technology, 2005
Simon Bennet, Steve McRobb and Ray Farmer, Object-Oriented System Analysis and Design
Using UML, McGraw Hill, 2006
Wendy and Michael Boggs, UML with Rational Rose 2002, Sibex Inc., 2002
2013 Pemrograman Basis Data dan SQL Modul 01 Pusat Bahan Ajar dan eLearning
15 Team Dosen http://www.mercubuana.ac.id
MODUL PERKULIAHAN
PEMROGRAMAN
WEB
05
Ilmu Komputer Sistem Informasi 87007 Team Dosen
Abstract Kompetensi
SDLC, RAD, Design Tersturktur, Class Memahami siklus pengembangan
dan Object sistem, memahami metodhologi
pengembangan sistem, mengenal UML
2013 Pemrograman Basis Data dan SQL Modul 01 Pusat Bahan Ajar dan eLearning
1 Team Dosen http://www.mercubuana.ac.id
SQL PLUS
4.1 FASILITAS DALAM SQL PLUS
4.1.1 SLASH ( / )
Digunakan untuk menjalankan perintah SQL atau PL / SQL yang disimpan dalam buffer.
4.1.2 EXEC[UTE]
Record timing data for an elapsed periode of time, lists the current timer’s name and timing data,
Contoh :
2013 Pemrograman Basis Data dan SQL Modul 01 Pusat Bahan Ajar dan eLearning
2 Team Dosen http://www.mercubuana.ac.id
Digunakan untuk merubah karakter / string yang lama dengan yang baru. Contoh
Untuk menambahkan satu atau lebih perintah SQL setelah perintah SQL yang ada pada buffer.
Contoh :
Setelah dijalankan
Contoh :
4.1.12 @@ file_name[.ext]
2013 Pemrograman Basis Data dan SQL Modul 01 Pusat Bahan Ajar dan eLearning
3 Team Dosen http://www.mercubuana.ac.id
Digunakan untuk dalam file yang memanggil file lainnya.
Digunakan untuk mengedit perintah SQL pada buffer atau pada file.
4.1.14 REM[ARK]
Digunakan untuk memberikan keterangan pada sebuah perintah SQL di dalam sebuah file.
Digunakan untuk menjalankan isi dari sebuah file yang berisikan perintah SQL.
Data Manipulation Language adalah bahasa yang digunakan untuk memanipulasi objek – objek yang
ada di database. Dibawah ini adalah contoh tabel yang akan dipergunakan untuk menjalankan perintah
SQL, sebagai penggambaran penggunaan perintah SQL dalam manipulasi data di database. Untuk
membuat tabel lihat pada pelajaran Data Definition Language ( DDL ).
2013 Pemrograman Basis Data dan SQL Modul 01 Pusat Bahan Ajar dan eLearning
4 Team Dosen http://www.mercubuana.ac.id
E0003 Surya Jl. Manggis No.3 M 873022 736322 300.000
DKI Jakarta
Definisi Klausa :
INSERT INTO <table | view( column_1, column_2, .. ) > VALUES ( values_clause ) | subquery.
Contoh :
Atau
Asumsi bahwa tabel Karyawan sudah ada. Dengan atribut yang sama dengan tabel karyawan.. Untuk
contoh kedua, data di ambil dari tabel Karyawan.
Perintah Update digunakan untuk merubah data yang sudah ada di dalam database.
Definisi Klausa :
Contoh :
SQL> UPDATE employee SET alamat = ‘Jl. Garuda No.1 DKI’ Jakarta WHERE nip =
’E0001’;
Atau
SQL> UPDATE employee set alamat = ( SELECT alamat FROM karyawan WHERE nip =
‘E0002’);
2013 Pemrograman Basis Data dan SQL Modul 01 Pusat Bahan Ajar dan eLearning
5 Team Dosen http://www.mercubuana.ac.id
Definisi Klausa :
Contoh :
Atau
SQL > DELETE FROM employee WHERE nip = ( SELECT nip FROM karyawan WHERE nip=’E0003’);
Perintah SELECT adalah perintah SQL yang digunakan untuk menampilkan data dari database baik
itu menggunakan kondisi ataupun tidak.
Bentuk Klausa :
Secara umum data di dalam database dapat ditampilkan dengan menggunakan perintah SELECT dan
FROM yang merupakan 2 perintah mandatory dalam perintah query. Sebagai contoh :
Keterangan :
2013 Pemrograman Basis Data dan SQL Modul 01 Pusat Bahan Ajar dan eLearning
6 Team Dosen http://www.mercubuana.ac.id
SQL > SELECT nip,nama FROM employee;
Keterangan :
Perintah di atas akan menampilkan semua data dari field nip dan nama dari tabel Employee.
SQL > SELECT nip “N.I.P”, nama “NAMA KARYAWAN” FROM employee atau
SQL > SELECT nip AS “N.I.P”, nama AS “NAMA KARYAWAM” FROM employee
Keterangan :
Untuk menampilkan alias dari sebuah atribut tabel dapat menggunakan AS atau langsung dengan
menggunakan tanda kutip dua.
SQL > SELECT DISTINCT * FROM employee atau SELECT UNIQUE * FROM employee
Keterangan
Dengan penambahan kata DISTINCT atau UNIQUE maka data yang sama hanya akan ditampilkan 1
kali saja.
Operator aritmatika yang dipakai dalam perintah SELECT adalah perkalian ( * ), penambahan ( + ),
pengurangan ( - ), pembagian ( / ) . Penambahan tanda kurung pada operator aritmatika maka
prioritas perhitungan akan diutamakan pada tanda kurung tersebut. Sebagai Contoh :
Penambahan klausa WHERE pada perintah SELECT adalah untuk memberikan data dengan kondisi
yang diinginkan.
Di dalam klausa WHERE terdapat operator pembanding yang sering digunakan, seperti
2013 Pemrograman Basis Data dan SQL Modul 01 Pusat Bahan Ajar dan eLearning
7 Team Dosen http://www.mercubuana.ac.id
SQL > SELECT * FROM employee WHERE nip = ‘E0001’;
SQL > SELECT * FROM employee WHERE nip < > ‘ E0001’;
LIKE ….. [ ESCAPE ]
Digunakan untuk menentukan data atribut sesuai dengan karakter yang diinginkan. Penggunaan
WILDCARD ( % ) atau “_” sering digunakan untuk klausa LIKE.Sebaliknya penggunaan klausa
ESCAPE digunakan untuk mencari data atribut yang mempunyai karakter “_” atau “%”. Sebagai
contoh :
SQL > SELECT * FROM emp WHERE nip LIKE ‘E#%_001’ ESCAPE ‘#’;
BETWEEN…….AND……..
Operator ini digunakan untuk mencari data yang mempunyai nilai antara. Contoh :
SQL > SELECT * FROM employee WHERE nip BETWEEN ‘E0001’ AND ‘E0002’;
IN
Digunakan untuk memasukkan nilai yang mempunyai kriteria dalam Klausa IN.
Contoh :
NULL
2013 Pemrograman Basis Data dan SQL Modul 01 Pusat Bahan Ajar dan eLearning
8 Team Dosen http://www.mercubuana.ac.id
NULL di dalam database, mewakili data yang kosong alias tidak ada data. Sebaliknya jikalau di dalam
perintah SELECT kita menambahkan perintah NOT NULL, maka data yang bukan NULL akan
ditampilkan. Sebagai contoh :
SQL > SELECT nip,nama FROM employee WHERE nip is not null;
No. X Y AND
01. True True True
02. True False False
03. False False False
04. False True False
Sebagai Contoh :
SQL > SELECT * FROM employee WHERE nip = ‘E0001’ AND nip = ‘E0002’;
Operator Logika OR
No. X Y OR
01. True True True
02. True False True
03. False False False
04. False True True
Sebagai Contoh :
SQL > SELECT * FROM employee WHERE nip = ‘E0001’ OR nip = ‘E0002’;
No. X NOT
2013 Pemrograman Basis Data dan SQL Modul 01 Pusat Bahan Ajar dan eLearning
9 Team Dosen http://www.mercubuana.ac.id
01. True False
02. FaLse True
Sebagai Contoh :
SQL > SELECT * FROM employee WHERE nip NOT LIKE ‘E0001’ OR nip = ‘E0002’;
Penambahan klausa ORDER BY pada perintah SELECT digunakan untuk mengurutkan data atribut
berdasarkan atribut yang diletakan setelah klausa ORDER BY. Penambahan klausa ASC adalah untuk
mengurutkan dari yang terkecil sampai yang terbesar sedangkan penggunaan klausa DESC adalah
kebalikannya. Contoh :
SQL > SELECT * FROM employee WHERE nip LIKE ‘E%’ ORDER BY nip ASC;
Penggunaan klausa NULLS FIRST akan menampilkan data yang bernilai null pada awal penampilan
data sedangkan NULLS LAST maka data yang bernilai null akan ditampilkan pada akhir baris data
yang ditampilkan. Contoh :
SQL > SELECT * FROM employee WHERE gaji > 100000 ORDER BY empno DESC NULLS LAST, 1;
DECODE
Penambahan klausa DECODE pada perintah SELECT sama dengan melakukan IF THEN ELSE pada
prosedur. Sebagai Contoh :
TABEL DUAL
Tabel digunakan untuk melakukan validasi pada sebuah atribut tabel, seperti penggunaan operator
aritmatika ataupun untuk menampilkan nilai default yang dapat diambil dari sistem database. Sebagai
Contoh :
Atau
Klausa NVL Digunakan untuk menggantikan nilai NULL dengan nilai yang diinginkan. Sedangkan NVL2
mempunyai pengertian jikalau ekspresi 1 tidak null maka nilainya adalah ekspresi 2, jikalau ekspresi 1
null maka nilanya adalah ekspresi 3.
Contoh :
Atau
Klausa UPPER
Klausa LOWER
Klausa INITCAP
Digunakan untuk merubah sebuah kalimat di mana awal kalimat huruf besar diikuti dengan huruf
kecil. Contoh :
Klausa CONCAT
Klausa SUBSTR
2013 Pemrograman Basis Data dan SQL Modul 01 Pusat Bahan Ajar dan eLearning
11 Team Dosen http://www.mercubuana.ac.id
Digunakan untuk mengambil sebuah atau beberapa karakter dari sebuah kalimat ( string ) dan
menentukan awal karakter dan banyak karakter yang mau di ambil. Contoh :
Klausa LENGTH
Klausa INSTR
SQL > SELECT INSTR(‘SQL dan PL/SQL’, ‘SQL’) posisi FROM dual;
Posisi
12
LTRIM digunakan untuk menghapus karakter dari kiri. Sedangkan RTRIM digunakan untuk
menghapus karakter dari kanan.
Contoh :
LTRIM example
XxyLAST WORD
RTRIM e.g
BROWNINGyxX
Klausa TRIM
Merupakan penggabungan dari RTRIM dan LTRIM.Digunakan untuk menghapus sebuah karakter
dalam string. Contoh :
2013 Pemrograman Basis Data dan SQL Modul 01 Pusat Bahan Ajar dan eLearning
12 Team Dosen http://www.mercubuana.ac.id
TRIM
oracle
SQL > SELECT TRIM(‘–‘ FROM ‘—Oracle –‘) trim FROM dual;
TRIM
Oracle
SQL> SELECT TRIM( LEADING ‘-‘ FROM ‘—oracle –‘) trim FROM dual;
TRIM
oracle--
Klausa REPLACE
Digunakan untuk menganti sebuah atau beberapa karakter dengan sebuah atau beberapa karakter.
Contoh :
SQL > SELECT REPLACE (‘JACK and JUE’,’J’,’BL’) “Changes” FROM dual;
Changes
BLACK and BLUE
Klausa TRANSLATE
Klausa ASCII digunakan untuk menentukan nilai ASCII pada sebuah karakter. Sedangkan CHR
merupakan kebalikan dari nilai ASCII. Contoh :
ASCII(‘A’) CHR(65)
65 A
Klausa ROUND
2013 Pemrograman Basis Data dan SQL Modul 01 Pusat Bahan Ajar dan eLearning
13 Team Dosen http://www.mercubuana.ac.id
Definisi klausa : ROUND(x, [,n])
ROUND( 25.5255 )
25.523.
Klausa TRUNC
Fungsi numerik ini digunakan untuk melakukan penghapusan nilai decimal yang tidak diinginkan.
Contoh :
TRUNC(25.345,2 )
25.3
Digunakan untuk melakukan pembulatan ke bilangan bulat ( integer ). Fungsi CEIL untuk pembulatan
ke atas sedangkan FLOOR untuk pembulatan ke bawah.
CEIL(18.95) FLOOR(18.95 )
19 18
Klausa MOD
Nilai balikan dari rumusan di atas adalah sebuah angka yang merupakan sisa dari operasi pembagian
x/y. Contoh :
SQL > SELECT MOD(15, 4) mod1, MOD(15.35, 3.5 ) mod2 FROM DUAL;
MOD1 MOD2
3 1.35
2013 Pemrograman Basis Data dan SQL Modul 01 Pusat Bahan Ajar dan eLearning
14 Team Dosen http://www.mercubuana.ac.id
Klausa ABS
Nilai balikan dari fungsi ini adalah nilai absolut dari x. Contoh :
X Y Z
2.75 0 2.75
Klausa SIGN
Contoh :
X Y Z
-1 0 1
Klausa SQRT
SQRT(10)
3.162277
Klausa POWER
POWER(2,2)
4
2013 Pemrograman Basis Data dan SQL Modul 01 Pusat Bahan Ajar dan eLearning
15 Team Dosen http://www.mercubuana.ac.id
Klausa EXP
Definisi klausa : EXP(x). Digunakan untuk pemangkatan bilangan natural (e). Contoh :
EXP(3)
20.0855369
LOG digunakan untuk menghasilkan nilai logaritma berbasis x untuk nilai y. Sedangkan fungsi LN
memberikan nilai logaritma natural untuk nilai y.Contoh :
LOG(5,2) LN(2)
.430676558 1.09861229
Definisi Klausa : COS(x), SIN(x), TAN(x). Digunakan untuk fungsi trigonometri. Contoh :
A B C
.866025404 .499999999 .577350268
Contoh :
Definisi Klausa : ACOS(x), ASIN(x), ATAN(x), ATAN2(x,y). Merupakan fungsi kosinus, sinus, dan
tangen. Contoh:
2013 Pemrograman Basis Data dan SQL Modul 01 Pusat Bahan Ajar dan eLearning
16 Team Dosen http://www.mercubuana.ac.id
Klausa BITAND
Digunakan untuk melakukan operasi AND untuk nilai – nilai bit antara dua argumen.
Contoh :
TO_NUMBER(BITAND(2,3))
2
Klausa ADD_MONTHS
Digunakan untuk mendefinisikan sebuah tanggal yang berjarak n bulan setelah tanggal d. Contoh :
Klausa MONTHS_BETWEEN
Digunakan untuk menentukan jumlah bulan antara tgl d1 dan d2. Jika d1 < d2 maka hasilnya adalah
negatif. Jika d1 > d2 maka hasilnya adalah positif. Contoh :
TGL
2.50789725
Klausa NEW_TIME
Tanggal dan waktu pada zone 2 ketika tanggal dan waktu zone 1 adalah d.
2013 Pemrograman Basis Data dan SQL Modul 01 Pusat Bahan Ajar dan eLearning
17 Team Dosen http://www.mercubuana.ac.id
AST,ADT Atlantic Standard / Daylight Time
BST, BDT Bering Standard / Daylight Time
CST, CDT Central Standard / Daylight Time
EST, EDT Eastern Standard / Daylight Time
HST, HDT Alaska – Hawaii Standard / Daylight Time
GMT Greenwich Mean Time
MST, MDT Mountain Standard / Daylight Time
NST Newfoundland Standard / Daylight Time
PST, PDT Pacific Standard / Daylight Time
YST, YDT Yukon Standard / Daylight Time
Contoh :
Klausa NEXT_DAY
Digunakan untuk menghasilkan tanggal yang jatuh pada nama hari (day_name ) yang terdekat setelah
tanggal d.
Contoh :
Tgl
07-APR-2004
Klausa LAST_DAY
Menentukan tanggal terakhir pada bulan yang sama dengan bulan argumen. d harus bernilai tanggal.
Contoh:
Tgl
30-APR-2004
TO_CHAR
Contoh :
TO_DATE
Digunakan untuk merubah sebuah data atribut ke dalam bentuk format tanggal.
Contoh :
TO_DATE(‘
14-FEB-2004
TO_NUMBER
Contoh :
TO_NUMBER(‘
60
PERINTAH COMMIT
Perintah Commit di dalam database digunakan untuk menyimpan data secara permanen.
Contoh :
2013 Pemrograman Basis Data dan SQL Modul 01 Pusat Bahan Ajar dan eLearning
19 Team Dosen http://www.mercubuana.ac.id
SQL>INSERT INTO
Employee(nip,nama,alamat,sex.no_telp,no_fax)VALUES(‘E0005’,’Mahendra’,’Jl.Kepak No.23 –
DKI Jakarta’,’M’,’765876’,’987600’,’200000’);
PERINTAH ROLLBACK
Perintah Rollback di dalam database digunakan untuk membatalkan data yang baru saja di
masukkan, dirubah ataupun dihapus.
Contoh :
PERINTAH SAVEPOINT
Contoh :
2013 Pemrograman Basis Data dan SQL Modul 01 Pusat Bahan Ajar dan eLearning
20 Team Dosen http://www.mercubuana.ac.id
Digunakan untuk membuat transaksi sekarang sebagai READ ONLY atau READ WRITE.
Perintah SET TRANSACTION tidak berlaku lagi jika perintah COMMIT atau ROLLBACK
dijalankan.
2013 Pemrograman Basis Data dan SQL Modul 01 Pusat Bahan Ajar dan eLearning
21 Team Dosen http://www.mercubuana.ac.id
Daftar Pustaka
Alan Denis, Barbara Haley Wixon, David Tagerden, System Analys and Design : an Object –
Oriented Approach with UML 2.0, John Willey and Sons, 2005
Henry C. Lucas Jr., The Analysis, Design and Implementation of Information Systems 4 th,
McGraw Hill, 1992
Satzinger, Jackson, Burd, Object-Oriented Analysis and Design with the Unified Process,
Course Technology, 2005
Simon Bennet, Steve McRobb and Ray Farmer, Object-Oriented System Analysis and Design
Using UML, McGraw Hill, 2006
Wendy and Michael Boggs, UML with Rational Rose 2002, Sibex Inc., 2002
2013 Pemrograman Basis Data dan SQL Modul 01 Pusat Bahan Ajar dan eLearning
22 Team Dosen http://www.mercubuana.ac.id
MODUL PERKULIAHAN
PEMROGRAMAN
WEB
06
Ilmu Komputer Sistem Informasi 87007 Team Dosen
Abstract Kompetensi
SDLC, RAD, Design Tersturktur, Class Memahami siklus pengembangan
dan Object sistem, memahami metodhologi
pengembangan sistem, mengenal UML
2013 Pemrograman Basis Data dan SQL Modul 01 Pusat Bahan Ajar dan eLearning
1 Team Dosen http://www.mercubuana.ac.id
DATA MANIPULATION LANGUAGE
5.1 FASILITAS DALAM DML
5.1.1. RUN
Fasilitas ini dapat menampilkan perintah SQL dalam buffer sebelum dijalankan. Hal ini berbeda
dengan perintah slash ( / ) yang langsung menjalankan perintah SQL dari buffer. Contoh :
5.1.2. CLEAR
Fasilitas ini digunakan untuk menghapus semua perintah yang ada di buffer SQLPlus.
Contoh :
5.1.4. DISCONNECT
Contoh :
Digunakan untuk merekam seluruh aktivitas perintah SQLPlus dan hasilnya ke dalam sebuah file.
Contoh :
Order By digunakan untuk mengurutkan data ( sorting ) dalam suatu tabel. Contoh :
SQL > SELECT * FROM employee WHERE nip IS NOT NULL ORDER by nip DESC;
Kolom variabel bertindak seperti kolom yang ada di tabel., namun sebenarnya tidak disimpan di
dalam tabel. Perintah SQL seperti INSERT,UPDATE,DELETE tidak dapat dilakukan dengan
menggunakan kolom variabel namun dapat menggunakan perintah SELECT untuk melihat data
yang dihasilkan. Yang dimaksud PSEUDOCOLUMN adalah
LEVEL
ROWID
Kolom ini menunjukkan alamat baris dalam query. Informasi dari ROWID adalah :
2013 Pemrograman Basis Data dan SQL Modul 01 Pusat Bahan Ajar dan eLearning
3 Team Dosen http://www.mercubuana.ac.id
o Data File yang digunakan ( File pertama adalah 1 ).
Nilai sebuah ROWID adalah unik untuk mengidentifikasikan sebuah baris di dalam database.
ROWNUM
Baik SYS_CONTEXT maupun USERENV digunakan untuk memberikan informasi di dalam session.
Paramater Keterangan
USER ENV Paramater
CLIENT_INFO Memberikan informasi tentang client
INSTANCE Digunakan untuk memberikan informasi tentang jumlah
instance yang dipakai.
ISDBA TRUE jika hak akses user adalah DBA
LANG Informasi tentang bahasa standardISO yang digunakan.
LANGUAGE Informasi tentang bahasa teritori dan karakter yang
digunakan dalam database.
SESSIONID Identifikasi tentang audit session
SYS_CONTEXT Parameter
TERMINAL Informasi tentang terminal yang digunakan
CURRENT_SCHEMA Informasi tentang Schema yang digunakan. Informasi
schema dapat dirubah dengan menggunakan ALTER
SESSION SET CURRENT_SCHEMA.
CURRENT_SCHEMAID Informasi tentang ID Schema yang digunakan.
CURRENT_USER Informasi tentang user
CURRENT_USERID Informasi tentang User ID
DB_DOMAIN Informasi tentang domain database.
HOST Informasi tentang host
2013 Pemrograman Basis Data dan SQL Modul 01 Pusat Bahan Ajar dan eLearning
4 Team Dosen http://www.mercubuana.ac.id
IP_ADDRESS Informasi tentang IP Address yang digunakan
NLS_CALENDAR Informasi tentang setup sistem kalendar yang digunakan
NLS_CURRENCY Informasi tentang setup mata uang yang digunakan
NLS_DATE_FORMAT Informasti tentang setup tanggal yang digunakan
NLS_SORT Informasi tentang pengurutan. DEFAULT Binary
NLS_TERRITORY Informasi tentang nama teritori
SESSION_USER Informasi tentang nama user
SESSION_USERID Informasi tentang id user
5.2.4. SYSDATE,USER,UID
Contoh :
Fungsi ini digunakan untuk melakukan perhitungan pada sekelompok data di dalam database.
Umumnya data hasil lebih sedikit dari jumlah data yang masuk. Beberapa fungsi Antara lain :
a. SUM
b. AVG
c. MAX – MIN
MAX Digunakan untuk Memberikan nilai maksimum pada sebuah tabel sedangkan MIN
digunakan untuk memberikan nilai minimum pada sebuah tabel. Contoh :
5.2.6. GROUP BY
Digunakan untuk mengelompokkan baris data.Dalam perintah select jikalau diisi dengan fungsi
agregat maka tidak boleh ada single data kecuali dengan menggunakan perintah GROUP BY.
Contoh :
Penambahan CUBE , ROLLUP pada klausa GROUP BY digunakan untuk perluasan query.
Contoh CUBE :
Maka hasil query yang pertama adalah berdasarkan tgl_masuk+empid; kedua berdasarkan
empid sedangkan yang terakhir berdasarkan keseluruhan data.
Contoh ROLLUP
Maka hasil query yang pertama berdasarkan tgl_masuk+empid dan keseluruhan data.
5.2.7. HAVING
Penggunaan HAVING digunakan untuk pembatasan group data. Oleh karena berdasakan group
data maka pada perintah SELECT harus ada perintah GROUP BY. Sedangkan perbedaan dengan
klausa WHERE adalah digunakan untuk pembatasan baris data.
2013 Pemrograman Basis Data dan SQL Modul 01 Pusat Bahan Ajar dan eLearning
6 Team Dosen http://www.mercubuana.ac.id
Contoh :
SQL > SELECT tgl_masuk,empid,sum(gaji) FROM employee WHERE empid BETWEEN ‘E0001’
AND ‘E0005’ GROUP BY tgl_masuk,empid HAVING sum(gaji) < 1000000;
Penggabungan beberapa tabel sering digunakan untuk menghubungkan sebuah data dari tabel
yang satu dengan yang lainnya. Ada beberapa istilah dalam menggabungkan tabel.
a. Product Cartesian
Menggabungkan beberapa tabel tanpa suatu kondisi tertentu. Akibatnya seluruh data akan
ditampilkan baik itu yang berasal dari tabel pertama maupun tabel kedua. Ciri – ciri dari
produk cartesian adalah :
Contoh :
b. Equijoin
Equijoin atau simple join atau inner join adalah menampilkan data dengan penggabungan
antara 2 atau lebih tabel dengan menggunakan operator sama dengan ( = ). Biasanya
menggunakan primary key dan foreign key untuk menghubungkan 2 atau lebih tabel.
Contoh
c. Non-Equijoin
Non-Equijoin adalah menampilkan data dengan penggabungan 2 atau lebih selain menggunakan
operator sama dengan ( = ) juga menggunakan operator lainnya seperti lebih besar atau sama
dengan ( >= ), BETWEEN … AND …
Contoh :
2013 Pemrograman Basis Data dan SQL Modul 01 Pusat Bahan Ajar dan eLearning
7 Team Dosen http://www.mercubuana.ac.id
d. Self Join
Contoh :
SQL > SELECT A.empid || ‘ no ID Karyawan ‘|| B.empnm FROM emp A,emp B where A.empid =
B.empid;
e. Outer Join
1. Operator outer joing (+) hanya dapat dipakai pada klausa WHERE.Dan hanya dapat
digunakan kolom dalam tabel atau view ;
2. Jika tabel A join dengan tabel B dengan berbagai kondisi, maka operator outer join harus
digunakan pada semua kondisi;
3. Operator outer join hanya bisa digunakan pada kolom, tidak pada ekspresi keputusan (
artbitrary expression ) ;
4. Kondisi yang menggunakan operator join tidak bisa digunakan pada operator logika OR;
5. Konsidi yang menggunakan operator IN tidak bisa digunakan untuk operator outer join
(+);
6. Tidak bisa digunakan untuk subquery.
Contoh :
SQL > select a.empno,a.hiredate,b.deptno from emp a,dept b where a.deptno(+) = b.deptno
and a.hiredate(+)= ‘17-DEC-80’
Operator himpunan digunakan untuk menggabungkan hasil data dari 2 query atau yang dikenal
dengan nama compound query. Ada beberapa ketentuan yang harus dipatuhi dalam menggunakan
operator himpunan
2013 Pemrograman Basis Data dan SQL Modul 01 Pusat Bahan Ajar dan eLearning
8 Team Dosen http://www.mercubuana.ac.id
Jumlah kolom harus sama antara query yang pertama dengan yang kedua. Tipe data antara
query yang satu dengan query yang kedua juga harus sama.
Penggunaan tanda kurung untuk memperioritaskan urutan hasil query.
Digunakan untuk menggabungkan 2 buah query di mana duplikasi data akan ditampilkan.
Penggunaan All berarti data query pertama ditampilkan terlebih dahulu sesudah itu baru
data query kedua.
Contoh :
SQL > SELECT deptno,dname FROM dept UNION SELECT deptno,ename FROM Employee;
5.2.9.2. MINUS
Data yang akan ditampilkan merupakan data hasil query yang pertama.
Contoh :
SQL > SELECT deptno,dname FROM dept MINUS SELECT deptno,ename FROM Employee;
5.2.9.3. INTERSECT
Data yang ditampilkan merupakan data yang sama dari kedua query.
Contoh :
SQL > SELECT deptno FROM dept INTERSECT SELECT deptno FROM employee;
5.2.10. SUBQUERY
Subquery adalah sebuah query yang terdapat di dalam query( inner query ). Sedangkan induk dari
query di sebut dengan nama outer query. Manfaat subquery sangat banyak ,terutama jikalau kita
hendak menyimpan data yang mempunyai kondisi tertentu. Beberapa aturan pemakaian subquery
adalah sebagai berikut :
2013 Pemrograman Basis Data dan SQL Modul 01 Pusat Bahan Ajar dan eLearning
9 Team Dosen http://www.mercubuana.ac.id
Subquery dapat ditempatkan pada Klausa setelah FROM, WHERE, HAVING.
Perbandingan Operasi Satu Baris ( Single – Row Comparison Operation – Scalar Query )
Data yang ditampilkan merupakan hasil dari subquery yang mempunyai nilai satu baris. Tipe
subquery ini menggunakan satu operator single – row seperti
Jika hasil dari subquery tidak merupakan satu baris maka sistem database akan memberikan
error “single-row subquery returns more than one row”.
Contoh :
SQL > SELECT deptno,empno,empnm FROM employee where deptno = ( SELECT deptno from
Dept where deptno = ‘10’);
SQL > SELECT deptno,empno,empnm FROM employee GROUP BY empno HAVING min ( Gaji )
= ( SELECT MIN(GAJI) from employee where deptno = ‘20’ );
Subquery yang menghasilkan nilai lebih dari satu baris. Operator yang digunakan adalah :
Operator IN
Baris yang dihasilkan harus dalam operator IN. Operator “=ANY’ atau “=SOME”
mempunyai pengertian sama dengan operator IN.
Contoh :
2013 Pemrograman Basis Data dan SQL Modul 01 Pusat Bahan Ajar dan eLearning
10 Team Dosen http://www.mercubuana.ac.id
Atau
Penggunaan operator ANY atau SOME harus di dahului operator ( =, <=, !=, >=, <>, > , < ).
Contoh :
SQL > SELECT empno,ename, job FROM emp WHERE sal < ANY ( SELECT sal FROM
emp WHERE job = ‘CLERK’) AND job < > ‘CLERK’;
Atau
SQL > SELECT empno,ename, job FROM emp WHERE sal < SOME ( SELECT sal FROM
emp WHERE job = ‘CLERK’) AND job < > ‘CLERK’;
ALL
Operator ALL membandingkan nilai semua hasil daripada subquery. Contoh penggunaan :
SQL > SELECT deptno,ename,sal FROM emp where sal > ALL ( SELECT
min(sal) FROM emp );
Perbandingan Operasi Banyak Baris ( Multi Column Subquery – Non Pairwise Comparison
)
Klausa FROM
Operator EXISTS
Operator EXISTS harus diletakkan setelah klausa WHERE. Penggunaan operator EXISTS
menghasilkan paling tidak satu baris.
2013 Pemrograman Basis Data dan SQL Modul 01 Pusat Bahan Ajar dan eLearning
11 Team Dosen http://www.mercubuana.ac.id
SQL > SELECT deptno,ename FROM emp WHERE EXISTS ( select deptno from dept );
Hasil dari inner query biasanya tidak berhubungan dengan outer query (
Uncorrelated Subquery ). Namun ada juga hasil dari inner query dipengaruhi oleh nilai outer
query ( Correlated Subquery ).
SQL > SELECT deptno,empno,empnm FROM employee where deptno = ( SELECT deptno from
Dept where deptno = ‘10’);
SQL > SELECT a.deptno,b.ename FROM ( SELECT deptno FROM dept ) a, emp b WHERE
a.deptno = b.deptno;
Penggunaan Optimizer harus di dahulu dengan tanda /*+ dan di akhiri dengan tandan */.
Beberapa optimizer adalah
1. USE_HASH
Hanya berlaku untuk equijoin atau inner join. Untuk non – equijoin dapat menggunakan
USE_MERGE. Dengan menggunakan optimizer ini maka sistem oracle database akan
membuat hash tabel di memory kemudian membandingkan baris data dari tabel yang kecil
dengan tabel lainnya.
Contoh :
2. USE_MERGE
Optimizer ini akan mengurutkan semua baris data pada tabel kecuali kolom pada klausa
WHERE di pakai untuk index.
Contoh :
2013 Pemrograman Basis Data dan SQL Modul 01 Pusat Bahan Ajar dan eLearning
12 Team Dosen http://www.mercubuana.ac.id
3. USE_NL
Hint ini memaksa menggabungkan suatu tabel dengan tabel lain ( atau
subquery ) dengan menggabungkan inner tabel dan neested loop.
Contoh :
SQL > SELECT deptno,empno,ename FROM emp WHERE deptno NOT IN ( SELECT
/*+HASH_AJ*/ deptno FROM dept WHERE deptno = ‘10’)
Atau
SQL > SELECT deptno,empno,ename FROM emp WHERE deptno NOT IN ( SELECT
/*+MERGE_AJ*/ deptno FROM dept WHERE deptno = ‘10’);
Atau
Query Hirarki
Sebuah tabel dapat digunakan sebagai query hirarki jika informasi baris dari tabel tersebut
mempunyai hubungan dengan baris yang lain dari tabel tersebut. Hirarki yang terbentuk pada
dijalankan tidak disimpan di dalam database
2013 Pemrograman Basis Data dan SQL Modul 01 Pusat Bahan Ajar dan eLearning
13 Team Dosen http://www.mercubuana.ac.id
Definisi Klausa
Keterangan :
Contoh Hirarki :
SQL > SELECT empno,mgr,ename,job FROM emp START WITH mgr IS NULL CONNECT BY
PRIOR empno = mgr;
2013 Pemrograman Basis Data dan SQL Modul 01 Pusat Bahan Ajar dan eLearning
14 Team Dosen http://www.mercubuana.ac.id
7876 7788 ADAMS CLERK
7902 7566 FORD ANALYST
7369 7902 SMITH CLERK
7698 7839 BLAKE MANAGER
7499 7698 ALLEN SALESMAN
7521 7698 WARD SALESMAN
7654 7698 MARTIN SALESMAN
7844 7698 TURNER SALESMAN
7900 7698 JAMES CLERK
7782 7839 CLARK MANAGER
7934 7782 MILLER CLERK
Bentuk Klausa :
Berguna untuk menambahkan sejumlah str2 ke dalam str1 sehingga panjang gabungan string
menjadi n karakter. LPAD menambahkan sebelah kiri sedangkan RPAD menambahkan sebelah
kanan. Contoh penggunaan :
ORG_CHART
|____KING
|______JONES
|________SCOTT
|__________ADAMS
|________FORD
|__________SMITH
|______BLAKE
|________ALLEN
|________WARD
|________MARTIN
|________TURNER
ORG_CHART
|________JAMES
2013 Pemrograman Basis Data dan SQL Modul 01 Pusat Bahan Ajar dan eLearning
15 Team Dosen http://www.mercubuana.ac.id
|______CLARK
|________MILLER
2013 Pemrograman Basis Data dan SQL Modul 01 Pusat Bahan Ajar dan eLearning
16 Team Dosen http://www.mercubuana.ac.id
Daftar Pustaka
Alan Denis, Barbara Haley Wixon, David Tagerden, System Analys and Design : an Object –
Oriented Approach with UML 2.0, John Willey and Sons, 2005
Henry C. Lucas Jr., The Analysis, Design and Implementation of Information Systems 4 th,
McGraw Hill, 1992
Satzinger, Jackson, Burd, Object-Oriented Analysis and Design with the Unified Process,
Course Technology, 2005
Simon Bennet, Steve McRobb and Ray Farmer, Object-Oriented System Analysis and Design
Using UML, McGraw Hill, 2006
Wendy and Michael Boggs, UML with Rational Rose 2002, Sibex Inc., 2002
2013 Pemrograman Basis Data dan SQL Modul 01 Pusat Bahan Ajar dan eLearning
17 Team Dosen http://www.mercubuana.ac.id
MODUL PERKULIAHAN
PEMROGRAMAN
WEB
07
Ilmu Komputer Sistem Informasi 87007 Team Dosen
Abstract Kompetensi
SDLC, RAD, Design Tersturktur, Class Memahami siklus pengembangan
dan Object sistem, memahami metodhologi
pengembangan sistem, mengenal UML
2013 Pemrograman Basis Data dan SQL Modul 01 Pusat Bahan Ajar dan eLearning
1 Team Dosen http://www.mercubuana.ac.id
PEMROGRAMAN PL/SQL
Penggunaan fasilitas SQLPlus Lanjutan di bawah ini dapat menggunakan notepad untuk melihat hasil
query yang optimal.
Tanda Ampersand ( & ) digunakan untuk membuat sebuah variabel pada layar. Pada saat
dijalankan, maka variabel tersebut harus diisi sebelum hasil query ditampilkan.
Sedangkan tanda double ampersand ( && ) digunakan untuk menampilkan sebuah variabel dengan
nilai yang sama pada variabel sebelumnya.
Contoh :
b. PROMPT
Fungsi PROMPT digunakan untuk menampilkan sebuah kalimat dalam layar SQLPlus.
Contoh penggunaan :
c. PAUSE
Fungsi PAUSE digunakan untuk menghentikan sementara waktu sebelum menjalankan perintah
SQL selanjutnya.
Contoh penggunaan :
SQL > PAUSE < Tekan enter untuk melanjutkan proses. >
d. ACCEPT.
2013 Pemrograman Basis Data dan SQL Modul 01 Pusat Bahan Ajar dan eLearning
2 Team Dosen http://www.mercubuana.ac.id
Fungsi ACCEPT digunakan untuk menampung nilai sebuah variabel di dalam layar.
Bentuk Klausanya :
ACC [EPT] variable_name [ NUM[BER] | CHAR | DATE ] [ FOR[MAT] format ] [ DEF [AULT]
default ] [ PROMPT text | NOPR [ OMPT ] [HIDE]
Keterangan :
[ NUM[BER] | CHAR | DATE ] : digunakan untuk menentukan tipe data dari variabel.
FORMAT digunakan untuk menentukan format variabel.
DEFAULT digunakan untuk menentukan nilai default dari variabel.
PROMPT digunakan untuk menampilkan text sedangkan NOPROMPT jikalau tidak mau
ditampilkan.
HIDE digunakan untuk menyembunyikan nilai masukan. Biasanya digunakan untuk password.
Contoh penggunaan :
SQL > ACCEPT v_user DEFAULT MANAGER PROMPT ‘ Masukkan User ID anda : ‘;
e. DEFINE
Contoh :
f. BREAK
Menampilkan hanya satu nilai untuk beberapa nilai yang sama pada kolom yang ditentukan.
Menambahkan baris kosong setiap kali nilai dari kolom yang ditentukan berubah.
Mencetak nilai hasil perhitungan untuk kelompok baris dengan nilai kolom yang sama pada
kolom yang ditentukan.
Bentuk Klausa :
Keterangan :
2013 Pemrograman Basis Data dan SQL Modul 01 Pusat Bahan Ajar dan eLearning
3 Team Dosen http://www.mercubuana.ac.id
ON ROW jika digunakan, maka break terjadi setiap kali terjadi penamabahan baris,
ON REPORT biasanya digunakan pada kalkulasi keseluruhan data,
SKIP n, digunakan untuk baris kosong sebanyak n baris,
SKIP PAGE, hasil query berikutnya akan dicetak pada halaman baru,
NODUP[LICATES] digunakan jika data duplikasi tidak ingin dicetak,
DUP[LICATES] adalah kebalikan dari NODUP[LICATES].
Contoh penggunaan :
g. COMPUTE
Bentuk Klausa :
COMPUTE [ function [ LAB[EL] text ] OF <expr | column > ON <expr | column | REPORT | ROW
>]
Keterangan
2013 Pemrograman Basis Data dan SQL Modul 01 Pusat Bahan Ajar dan eLearning
4 Team Dosen http://www.mercubuana.ac.id
LABEL text dapat digunakan sebagai hasil dari sebuah kalkulasi.Jika diberikan, default text
adalah nama fungsi.
OF untuk menentukan expr atau kolom apa yang dikalkulasi.
ON digunakan untuk menentukan kriteria BREAK untuk satu perhitungan COMPUTE.
Contoh penggunaan :
h. SET
i. SHOW
a. COLUMN
Beberapa atribut dibawah ini berkaitan dengan format kolom yang akan ditampilkan pada layar :
2013 Pemrograman Basis Data dan SQL Modul 01 Pusat Bahan Ajar dan eLearning
5 Team Dosen http://www.mercubuana.ac.id
Klausa Keterangan
ALI[AS] alias Memberi nama alias yang dapat digunakan untuk mengantikan nama
column pada perintah BREAK,COMPUTE ataupun COLUMN.
CLE[AR] Mengembalikan atribut column ke nilai defaultnya sesuai dengan
tipe data, panjang data, dan sebagainya.
FOLD_A[FTER] Menambahkan karakter baris baru ( carriage return ) setelah judul
column dan setelah nilai column dari setiap baris. Tidak berlaku
untuk kolom terakhir pada klausa SELECT.
FOLD_B[EFORE] Menambahkan karakter baris baru ( carriage return ) setelah judul
column dan setelah nilai column dari setiap baris. Tidak berlaku
untuk kolom terakhir pada klausa SELECT.
FOR[MAT] Menentukan format tampilan nilai column. Format untuk kolom
format karakter berupa ‘An’ di mana n adalah lebar kolom. Format untuk
kolom DATE mengikuti NLS_DATE_FORMAT namun lebar
kolomnya dapat ditentukan dengan ‘An’. Format untuk kolom
NUMBER sama dengan format yang digunakan pada fungsi
TO_CHAR ( NUMBER ).
HEA[DING] Menentukan text sebagai judul kolom untuk menggantikan judul
text kolom yang diberikan di dalam SELECT statement. String karakter
text dapat mengandung karakter HEADSEP untuk menampilkan
judul kolom dalam dua baris atau lebih.
JUS[TIFY] <L[EFT] Menentukan apakah judul kolom dan nilai kolom ditampilkan rata
| C[ENTER] |
kiri, di tengah – tengah atau rata kanan. Jika tidak disebutkan
R[IGHT] >
maka kolom NUMBER ditampilkan rata kanan dan kolom lainnya
rata kiri.
LIKE [expr | alias ] Menyalin atribut tampilan dari kolom lain. Atribut yang disalin
hanya atribut yang tidak ditentukan secara eksplisit.
NEWL[INE] Sama efeknya dengan FOLD_BEFORE, yakni menampilkan baris
barus sebelum nilai column ditampilkan.
NEW_V[ALUE] Digunakan untuk membuat variabel yang nilainya adalah nilai kolom.
variabel
Variabel tersebut biasanya digunakan pada perintah TTITLE untuk
membuat judul atas pada laporan master detail. Agar pengaruhnya
terlihat, kolom pada perintah ini harus digunakan juga pada
perintah “BREAK…SKIP PAGE”.
2013 Pemrograman Basis Data dan SQL Modul 01 Pusat Bahan Ajar dan eLearning
6 Team Dosen http://www.mercubuana.ac.id
NOPRI[NT] | Mengatur apakah judul dan nilai column dicetak di layar [ON] atau
PRI[NT]
tidak [OFF]. Default adalah OFF.
NUL[L] text Menentukan text sebagai nilai yang dicetak pada kolom yang
ditentukan.
OLD_V[ALUE] Digunakan untuk membuat variabel yang nilainya adalah nilai
variable
kolom.Variabel tersebut biasanya digunakan pada perintah BTITLE
untuk membuat judul – bawah pada laporan master detail. Kolom
pada perintah ini harus digunakan juga pada perintah
“BREAK…SKIP PAGE”.
ON | OFF Mengaktifkan (ON) atau menonaktifkan ( OFF ) atribut – atribut
kolom yang sudah didefinisikan.
WRAP[PPED] | Perintah ini khusus untuk kolom DATE atau karakter yang lebarnya
WOR[D_WRAPPED
ditentukan namun nilai kolom tersebut melebihi lebar kolom yang
|TRU[NCATE]
disediakan. Pilihan WRAPPED akan melanjutkan bagian yang tidak
mencukupi ke baris yang baru pada kolom yang sama. Pilihan
WORD_WRAPPED akan melanjutkan kata – kata yang tidak
mencukupi ke baris yang baru pada kolom yang sama. Pilihan
TRUNCATE akan memotong bagian yang tidak mencukupi.
Contoh penggunaan :
b. CLEAR
Fungsi Clear digunakan untuk menghapus perintah SQL yang ada pada memory.
Bentuk klausa :
Contoh penggunaan :
Digunakan untuk memberi judul atas atau judul bawah pada sebuah query.
Bentuk Klausa :
2013 Pemrograman Basis Data dan SQL Modul 01 Pusat Bahan Ajar dan eLearning
7 Team Dosen http://www.mercubuana.ac.id
Komponen printspec yang dapag digunakan :
PrintSpec Keterangan
COL n Menentukan posisi cetak dimulai dari kolom ke n.
S[KIP] [n] Memulai baris baru n baris berikutnya dari baris sebelumnya. Jika n
tidak disertakan, n=1. Jika n=0, text atau variabel dicetak pada baris
berikutnya.
TAB n Menambahkan tab maju sebanyak n. Jika n negatif, yang dicetak
adalah tab mundur.
LE[FT] | Menentukan apakah judul dicetak rapat kiri, tengah, atau kanan.
CE[NTER] |
R[IGHT]
BOLD Mencetak text dengan huruf tebal.
FORMAT Menentukan format. Format yang valid adalah format yang berlaku
format
untuk perintah COLUMN.
Parameter Keterangan
SQL.LNO Untuk menampilkan nomor dari current line.
SQL.PNO Untuk menampilkan nomor dari current page.
SQL.RELEASE Untuk menampilkan nomor release Oracle.
SQL. Untuk menampilkan kode kesalahan.
ERRORCODE
SQL.USER Untuk menampilkan nama current user.
Contoh :
Fungsi REPHEADER dan REPFOOTER hampir sama dengan fungsi TTITLE dan BTITLE.
Perbedaannya, REPHEADER dan REPFOOTER hanya dicetak sekali saja pada perintah SELECT.
Bentuk Klausa :
2013 Pemrograman Basis Data dan SQL Modul 01 Pusat Bahan Ajar dan eLearning
8 Team Dosen http://www.mercubuana.ac.id
Contoh :
e. MENGATUR LAYOUT
Beberapa parameter yang dapat digunakan untuk mengatur format laporan pada layar.
Parameter Keterangan
COLSEP text Menentukan text pembatas antara kolom yang dipilih. Default
adalah spasi tunggal.
HEA[DING] < ON | Judul kolom dicetak jika nilai ON ( default ). Tidak dicetak jika
OFF >
OFF.
HEADS[EP] < c | Menentukan karakter pembatas judul kolom. Default c adalah
ON | OFF >
karakter garis vertikal (“|”). Jika ON, karakter HEADSEP
dikembalikan ke default dan diaktifkan. Jika OFF, karakter
HEADSET menjadi tidak aktif.
2013 Pemrograman Basis Data dan SQL Modul 01 Pusat Bahan Ajar dan eLearning
9 Team Dosen http://www.mercubuana.ac.id
RECSEPCHAR c Menentukan karakter c sebagai pemisah record. Dicetak
tidaknya pemisah record ini ditentukan oleh parameter RECSEP.
Default c adalah spasi tunggal.
UNDERLINE < c | Menentukan c sebagai garis bawah dari judul kolom. ON untuk
ON | OFF >
mengembalikan nilai c menjadi default., yaitu tanda sambung (-).
OFF berarti garis bawah tidak dicetak.
Gunakan perintah SET untuk mensetup parameter. Untuk menampilkan parameter gunakan
perintah SHOW.
Beberapa paramater yang dapat digunakan untuk membantu penampilan layar agar lebih baik.
Parameter Keterangan
SET ECHO < ON | Menentukan apakah perintah yang ada pada file script yang
OFF > sedang dijalankan ( termasuk perintah SQL dan blok SQL )
SET TERMOUT < ON | Menentukan apakah keluaran perintah yang ada pada file
OFF >
script yang sedang dijalankan diperlihatkan pada layar ( ON )
atau tidak ( OFF ). Default adalah ON.
SET TRIMOUT < ON | Menentukan apakah spasi atau blank pada akhir baris dari
OFF >
sebuah perintah di SQL*Plus diabaikan ( ON ) atau tidak (
OFF ). Default ON.
SET VERIFY < Menentukan apakah baris perintah SQL atau PL / SQL yang
ON | mengandung substitution variable diperlihatkan ( ON ) atau
OFF > tidak ( OFF). Jika ON, baris yang diperlihatkan adalah
sebelum dan setelah variabel diberi nilai, dan ini menjadi
default.
2013 Pemrograman Basis Data dan SQL Modul 01 Pusat Bahan Ajar dan eLearning
10 Team Dosen http://www.mercubuana.ac.id
Daftar Pustaka
Alan Denis, Barbara Haley Wixon, David Tagerden, System Analys and Design : an Object –
Oriented Approach with UML 2.0, John Willey and Sons, 2005
Henry C. Lucas Jr., The Analysis, Design and Implementation of Information Systems 4 th,
McGraw Hill, 1992
Satzinger, Jackson, Burd, Object-Oriented Analysis and Design with the Unified Process,
Course Technology, 2005
Simon Bennet, Steve McRobb and Ray Farmer, Object-Oriented System Analysis and Design
Using UML, McGraw Hill, 2006
Wendy and Michael Boggs, UML with Rational Rose 2002, Sibex Inc., 2002
2013 Pemrograman Basis Data dan SQL Modul 01 Pusat Bahan Ajar dan eLearning
11 Team Dosen http://www.mercubuana.ac.id
2013 Pemrograman Basis Data dan SQL Modul 01 Pusat Bahan Ajar dan eLearning
12 Team Dosen http://www.mercubuana.ac.id
MODUL PERKULIAHAN
PEMROGRAMAN
BASIS DATA DAN
SQL
Modul Standar untuk
digunakan dalam Perkuliahan
di Universitas Mercu Buana
08
Ilmu Komputer Sistem Informasi 87007 Team Dosen
Abstract Kompetensi
SDLC, RAD, Design Tersturktur, Class Memahami siklus pengembangan
dan Object sistem, memahami metodhologi
pengembangan sistem, mengenal UML
2013 Pemrograman Basis Data dan SQL Modul 01 Pusat Bahan Ajar dan eLearning
1 Team Dosen http://www.mercubuana.ac.id
2013 Pemrograman Basis Data dan SQL Modul 01 Pusat Bahan Ajar dan eLearning
2 Team Dosen http://www.mercubuana.ac.id
Data Definition Languange (DDL)
Data Definition Language ( DDL )
Data Definition Language ( DDL ) adalah bahasa SQL yang digunakan untuk mendefinisikan,
menghapus, memberi hak akses ataupun menganalisa objek – objek database.
A. MEMBUAT TABEL
Keterangan
2013 Pemrograman Basis Data dan SQL Modul 01 Pusat Bahan Ajar dan eLearning
3 Team Dosen http://www.mercubuana.ac.id
Contoh
B. CONSTRAINT
Definisi pembuatan CONSTRAINT dapat dilakukan pada saat pembuatan tabel atau pada
saat merubah struktur tabel.
Adapun definisi pada saat pembuatan tabel adalah
);
NOT NULL
Tipe constraint ini hanya dapat digunakan pada kolom.
2013 Pemrograman Basis Data dan SQL Modul 01 Pusat Bahan Ajar dan eLearning
4 Team Dosen http://www.mercubuana.ac.id
Definisi : [ CONSTRAINT nama constraint ] NOT NULL;
Contoh :
ALTER TABLE emp MODIFY address varchar2(100) NOT NULL;
UNIQUE
Contoh :
PRIMARY KEY
Contoh :
FOREIGN KEY
Definisi : [CONSTRAINT nama constraint FOREIGN KEY nama kolom REFERENCES nama
tabel ( nama kolom 1 ) ON DELETE CASCADE | SET NULL]
Contoh :
ALTER TABLE emp ADD CONSTRAINT c_3 FOREIGN KEY dept_id REFERENCES dept
(dept_id );
CHECK
2013 Pemrograman Basis Data dan SQL Modul 01 Pusat Bahan Ajar dan eLearning
5 Team Dosen http://www.mercubuana.ac.id
Kondisi di sini dapat berupa kondisi Perbandingan, kondisi BETWEEN, kondisi NULL, kondisi
LIKE, kondisi EXISTS
Contoh :
PRAKTEK 1:
Soal :
Buatlah Tabel Barang, Supplier, Customer, Pembelian, Pasok
Program SQL :
2013 Pemrograman Basis Data dan SQL Modul 01 Pusat Bahan Ajar dan eLearning
6 Team Dosen http://www.mercubuana.ac.id
Constraint pk_Customer primary key (Kode_Customer)
);
2013 Pemrograman Basis Data dan SQL Modul 01 Pusat Bahan Ajar dan eLearning
7 Team Dosen http://www.mercubuana.ac.id
Tampilan :
2013 Pemrograman Basis Data dan SQL Modul 01 Pusat Bahan Ajar dan eLearning
8 Team Dosen http://www.mercubuana.ac.id
Daftar Pustaka
Alan Denis, Barbara Haley Wixon, David Tagerden, System Analys and Design : an Object –
Oriented Approach with UML 2.0, John Willey and Sons, 2005
Henry C. Lucas Jr., The Analysis, Design and Implementation of Information Systems 4 th,
McGraw Hill, 1992
Satzinger, Jackson, Burd, Object-Oriented Analysis and Design with the Unified Process,
Course Technology, 2005
Simon Bennet, Steve McRobb and Ray Farmer, Object-Oriented System Analysis and Design
Using UML, McGraw Hill, 2006
Wendy and Michael Boggs, UML with Rational Rose 2002, Sibex Inc., 2002
2013 Pemrograman Basis Data dan SQL Modul 01 Pusat Bahan Ajar dan eLearning
9 Team Dosen http://www.mercubuana.ac.id
MODUL PERKULIAHAN
PEMROGRAMAN
BASIS DATA DAN
SQL
Modul Standar untuk
digunakan dalam Perkuliahan
di Universitas Mercu Buana
09
Ilmu Komputer Sistem Informasi 87007 Team Dosen
Abstract Kompetensi
SDLC, RAD, Design Tersturktur, Class Memahami siklus pengembangan
dan Object sistem, memahami metodhologi
pengembangan sistem, mengenal UML
2013 Pemrograman Basis Data dan SQL Modul 01 Pusat Bahan Ajar dan eLearning
1 Team Dosen http://www.mercubuana.ac.id
2013 Pemrograman Basis Data dan SQL Modul 01 Pusat Bahan Ajar dan eLearning
2 Team Dosen http://www.mercubuana.ac.id
Data Manipulation Languange (DML)
Praktek 2
Data Manipulation language ( DML )
Insert
Soal :
Masukkan data pada Tabel Barang, Customer, Supplier, Pembelian, Pasok
Program :
insert into Barang values ('ELK-02','Lemari Es','Unit','8');
2013 Pemrograman Basis Data dan SQL Modul 01 Pusat Bahan Ajar dan eLearning
4 Team Dosen http://www.mercubuana.ac.id
insert into Pembelian values ('Bel-E015','ELK-04','B-002','17-Jul-02','15');
Tampilan :
2013 Pemrograman Basis Data dan SQL Modul 01 Pusat Bahan Ajar dan eLearning
5 Team Dosen http://www.mercubuana.ac.id
2013 Pemrograman Basis Data dan SQL Modul 01 Pusat Bahan Ajar dan eLearning
6 Team Dosen http://www.mercubuana.ac.id
Praktek 3
Membuat view
Soal :
Membuat view dari tabel Customer
Soal :
Membuat view dari tabel Barang. Tapi yang ditampilkan hanya Nama Barang dan Stok barang
2013 Pemrograman Basis Data dan SQL Modul 01 Pusat Bahan Ajar dan eLearning
7 Team Dosen http://www.mercubuana.ac.id
Pengelompokkan data ( group by ) dan Aggregat function
Soal :
Tampilkan minimum pembelian, maksimum pembelian, rata-rata pembelian, jumlah pembelian
dari tabel Pembelian berdasarkan kode barang.
Soal :
2013 Pemrograman Basis Data dan SQL Modul 01 Pusat Bahan Ajar dan eLearning
8 Team Dosen http://www.mercubuana.ac.id
Tampilkan minimum pasok, maksimum pasok, rata-rata pasok, jumlah pasok dari tabel
Pasok berdasarkan kode barang.
Daftar Pustaka
Alan Denis, Barbara Haley Wixon, David Tagerden, System Analys and Design : an Object –
Oriented Approach with UML 2.0, John Willey and Sons, 2005
Henry C. Lucas Jr., The Analysis, Design and Implementation of Information Systems 4 th,
McGraw Hill, 1992
Satzinger, Jackson, Burd, Object-Oriented Analysis and Design with the Unified Process,
Course Technology, 2005
Simon Bennet, Steve McRobb and Ray Farmer, Object-Oriented System Analysis and Design
Using UML, McGraw Hill, 2006
Wendy and Michael Boggs, UML with Rational Rose 2002, Sibex Inc., 2002
2013 Pemrograman Basis Data dan SQL Modul 01 Pusat Bahan Ajar dan eLearning
9 Team Dosen http://www.mercubuana.ac.id
MODUL PERKULIAHAN
PEMROGRAMAN
BASIS DATA DAN
SQL
Modul Standar untuk
digunakan dalam Perkuliahan
di Universitas Mercu Buana
10
Ilmu Komputer Sistem Informasi 87007 Team Dosen
Abstract Kompetensi
SDLC, RAD, Design Tersturktur, Class Memahami siklus pengembangan
dan Object sistem, memahami metodhologi
pengembangan sistem, mengenal UML
2013 Pemrograman Basis Data dan SQL Modul 01 Pusat Bahan Ajar dan eLearning
1 Team Dosen http://www.mercubuana.ac.id
2013 Pemrograman Basis Data dan SQL Modul 01 Pusat Bahan Ajar dan eLearning
2 Team Dosen http://www.mercubuana.ac.id
Data Manipulation Languange (DML)
Praktek 4
Pengurutan data ( order by )
Soal :
Tampilkan semua data customer, tampilan diurut berdasarkan nama customer!
Soal :
Tampilkan data pasok berdasarkan urutan jumlah pasok!
2013 Pemrograman Basis Data dan SQL Modul 01 Pusat Bahan Ajar dan eLearning
3 Team Dosen http://www.mercubuana.ac.id
Soal :
Tampilkan data pasok berdasarkan urutan jumlah pasok secara menurun!
Soal :
2013 Pemrograman Basis Data dan SQL Modul 01 Pusat Bahan Ajar dan eLearning
4 Team Dosen http://www.mercubuana.ac.id
Tampilkan data supplier yang nama suppliernya bukan berakhiran tron!
Soal :
Tampilkan kode barang dan kode supplier yang jumlah pasoknya 2,4,6,12!
Soal :
Tampilkan customer yang mempunyai kode ‘j-001’ atau ‘B-0002;!
2013 Pemrograman Basis Data dan SQL Modul 01 Pusat Bahan Ajar dan eLearning
5 Team Dosen http://www.mercubuana.ac.id
Program dan Tampilan :
Praktek 5
Soal :
Tampilkan berapa kali pembelian (cacah beli), jumlah pembelian berdasarkan kode barang,
kode customer . diurutkan berdasarkan kode barang dan kode customer!
2013 Pemrograman Basis Data dan SQL Modul 01 Pusat Bahan Ajar dan eLearning
6 Team Dosen http://www.mercubuana.ac.id
Quey dan view
Soal :
Tampilkan nama barang, tanggal pasok, dan jumlah barang yang dipasok!
2 from barang,pasok
3 where barang.kode_barang=pasok.kode_barang;
2013 Pemrograman Basis Data dan SQL Modul 01 Pusat Bahan Ajar dan eLearning
7 Team Dosen http://www.mercubuana.ac.id
Rice cooker 01-JAN-02 5
Lemari Es 01-FEB-02 2
Lemari Es 02-FEB-02 3
Lemari Es 01-JAN-02 2
Televisi 03-MAR-02 5
Televisi 04-MAR-02 2
Televisi 03-MAR-02 3
Televisi 13-MAR-02 4
Televisi 13-MAR-02 3
Radio/Tape 22-APR-02 12
Radio/Tape 30-JAN-02 9
12 rows selected.
Soal :
Tampilkan seluruh transaksi pembelian ( tanggal pembelian dan jumlah pembelian ).
TANGGAL_P JUMLAH_PEMBELIAN
--------- ----------------------------------------
20-MAY-02 3
2013 Pemrograman Basis Data dan SQL Modul 01 Pusat Bahan Ajar dan eLearning
8 Team Dosen http://www.mercubuana.ac.id
21-MAY-02 4
20-MAY-02 2
20-MAY-02 2
22-MAY-02 3
24-JUN-02 1
24-JUN-02 1
25-JUN-02 2
25-JUN-02 2
20-JUN-02 5
02-JUL-02 4
TANGGAL_P JUMLAH_PEMBELIAN
--------- ---------------------------------------
04-JUL-02 6
10-JUL-02 5
15-JUL-02 12
17-JUL-02 15
15 rows selected.
Soal :
Tampilkan rata – rata pembelian pada transaksi pembelian..
RATA2_PEMBELIAN
2013 Pemrograman Basis Data dan SQL Modul 01 Pusat Bahan Ajar dan eLearning
9 Team Dosen http://www.mercubuana.ac.id
---------------
4.46666667
Soal :
Tampilkan transaksi pembelian yang jumlahnya di atas rata-rata.
TANGGAL_P JUMLAH_PEMBELIAN
--------- ----------------
20-JUN-02 5
04-JUL-02 6
10-JUL-02 5
15-JUL-02 12
17-JUL-02 15
Soal :
Tampilkan kode barang, kode customer, dan cacah pembelian from pembelian!
ELK-01 B-001 1
ELK-01 B-002 1
ELK-01 J-001 2
ELK-01 J-002 1
ELK-02 B-001 1
ELK-02 B-002 1
ELK-02 J-001 1
ELK-02 J-002 1
ELK-03 B-001 2
ELK-03 J-001 1
ELK-03 J-002 1
ELK-04 B-002 1
ELK-04 J-002 1
13 rows selected.
2013 Pemrograman Basis Data dan SQL Modul 01 Pusat Bahan Ajar dan eLearning
11 Team Dosen http://www.mercubuana.ac.id
Daftar Pustaka
Alan Denis, Barbara Haley Wixon, David Tagerden, System Analys and Design : an Object –
Oriented Approach with UML 2.0, John Willey and Sons, 2005
Henry C. Lucas Jr., The Analysis, Design and Implementation of Information Systems 4 th,
McGraw Hill, 1992
Satzinger, Jackson, Burd, Object-Oriented Analysis and Design with the Unified Process,
Course Technology, 2005
Simon Bennet, Steve McRobb and Ray Farmer, Object-Oriented System Analysis and Design
Using UML, McGraw Hill, 2006
Wendy and Michael Boggs, UML with Rational Rose 2002, Sibex Inc., 2002
2013 Pemrograman Basis Data dan SQL Modul 01 Pusat Bahan Ajar dan eLearning
12 Team Dosen http://www.mercubuana.ac.id
MODUL PERKULIAHAN
PEMROGRAMAN
BASIS DATA DAN
SQL
Modul Standar untuk
digunakan dalam Perkuliahan
di Universitas Mercu Buana
11
Ilmu Komputer Sistem Informasi 87007 Team Dosen
Abstract Kompetensi
SDLC, RAD, Design Tersturktur, Class Memahami siklus pengembangan
dan Object sistem, memahami metodhologi
pengembangan sistem, mengenal UML
2013 Pemrograman Basis Data dan SQL Modul 01 Pusat Bahan Ajar dan eLearning
1 Team Dosen http://www.mercubuana.ac.id
2013 Pemrograman Basis Data dan SQL Modul 01 Pusat Bahan Ajar dan eLearning
2 Team Dosen http://www.mercubuana.ac.id
Data Manipulation Languange (DML)
Praktek 6
Soal :
Tampilkan cacah pembelian (berapa kali pembelian) dan jumlah pembelian per nama
customer.
2013 Pemrograman Basis Data dan SQL Modul 01 Pusat Bahan Ajar dan eLearning
3 Team Dosen http://www.mercubuana.ac.id
Soal ;
Tampilkan seluruh transaksi pembelian (tanggal pembelian dan jumlah pembelian)
Soal :
Tampilkan jumlah pembelian rata-rata pada transaksi pembelian.
2013 Pemrograman Basis Data dan SQL Modul 01 Pusat Bahan Ajar dan eLearning
4 Team Dosen http://www.mercubuana.ac.id
Soal :
Tampilkan transaksi pembelian yang jumlahnya di atas rata-rata.
Soal :
Tampilkan transaksi pembelian yang jumlahnya paling kecil
Soal :
Tampilkan nama barang yang mempunyai stok barang kurang dari rata-rata
2013 Pemrograman Basis Data dan SQL Modul 01 Pusat Bahan Ajar dan eLearning
5 Team Dosen http://www.mercubuana.ac.id
Seleksi lebih dari satu tabel
Soal :
Tampilkan supplier yang paling besar pasoknya
Soal:
Buat view bernama v_barang yang menampilkan nama barang dan stok barang.
Soal :
Tampilkan semua data yang ada pada view v_Barang
2013 Pemrograman Basis Data dan SQL Modul 01 Pusat Bahan Ajar dan eLearning
6 Team Dosen http://www.mercubuana.ac.id
Program dan Tampilan :
Soal :
Tampilkan nama barang dari view v_Barang
Soal :
Hapuslah view v_Barang
Soal :
Tampilkan view v_Barang (apakah masih ada?)
2013 Pemrograman Basis Data dan SQL Modul 01 Pusat Bahan Ajar dan eLearning
7 Team Dosen http://www.mercubuana.ac.id
Soal :
Buatlah view dengan nama V_Barang_Pasok yang menampilkan jumlah pasok per
nama barang untuk tanggal pasok tertentu.
Tampilan :
Soal :
Tampilkan jumlah pasok per nama barang per tanggal pasok ( dari view tersebut )
Soal :
2013 Pemrograman Basis Data dan SQL Modul 01 Pusat Bahan Ajar dan eLearning
8 Team Dosen http://www.mercubuana.ac.id
Tampilkan jumlah pasok per nama barang per tanggal pasok. Nama barang yang
ditampilkan adalah televise, radio/tape dan lemari es serta mempunyai jumlah antara 5
dan 10 (Tampilkan dari view V_Barang_Pasok)
Soal :
Buatlah view dengan nama V_Supplier_Pasok yang menampilkan jumlah pasok per
nama barang untuk tanggal pasok tertentu.
Soal :
Tampilkan jumlah pasok per nama supplier per tanggal pasok (dari view tersebut)
2013 Pemrograman Basis Data dan SQL Modul 01 Pusat Bahan Ajar dan eLearning
9 Team Dosen http://www.mercubuana.ac.id
Soal :
Tampilkan jumlah pasok per nama supplier per tanggal pasok. Nama supplier yang
ditampilkan adalah yang berakhiran tron dan mempunyai jumlah pasok 3 dan 5
(Tampilkan dari view V_Supplier_Pasok).
Soal :
Buatlah view dengan nama V_Supplier yang menampilkan kode supplier, nama
supplier, dan telepon supplier.Supplier yang ditampilkan adalah supplier yang berasal
dari kota Jakarta.
2013 Pemrograman Basis Data dan SQL Modul 01 Pusat Bahan Ajar dan eLearning
10 Team Dosen http://www.mercubuana.ac.id
Soal :
Tampilkan semua data yang ada pada view v_Supplier
2013 Pemrograman Basis Data dan SQL Modul 01 Pusat Bahan Ajar dan eLearning
11 Team Dosen http://www.mercubuana.ac.id
Daftar Pustaka
Alan Denis, Barbara Haley Wixon, David Tagerden, System Analys and Design : an Object –
Oriented Approach with UML 2.0, John Willey and Sons, 2005
Henry C. Lucas Jr., The Analysis, Design and Implementation of Information Systems 4 th,
McGraw Hill, 1992
Satzinger, Jackson, Burd, Object-Oriented Analysis and Design with the Unified Process,
Course Technology, 2005
Simon Bennet, Steve McRobb and Ray Farmer, Object-Oriented System Analysis and Design
Using UML, McGraw Hill, 2006
Wendy and Michael Boggs, UML with Rational Rose 2002, Sibex Inc., 2002
2013 Pemrograman Basis Data dan SQL Modul 01 Pusat Bahan Ajar dan eLearning
12 Team Dosen http://www.mercubuana.ac.id
MODUL PERKULIAHAN
PEMROGRAMAN
BASIS DATA DAN
SQL
Modul Standar untuk
digunakan dalam Perkuliahan
di Universitas Mercu Buana
12
Ilmu Komputer Sistem Informasi 87007 Team Dosen
Abstract Kompetensi
SDLC, RAD, Design Tersturktur, Class Memahami siklus pengembangan
dan Object sistem, memahami metodhologi
pengembangan sistem, mengenal UML
2013 Pemrograman Basis Data dan SQL Modul 01 Pusat Bahan Ajar dan eLearning
1 Team Dosen http://www.mercubuana.ac.id
2013 Pemrograman Basis Data dan SQL Modul 01 Pusat Bahan Ajar dan eLearning
2 Team Dosen http://www.mercubuana.ac.id
ALJABAR RELASIONAL
Praktek 7
Aljabar Relasional
Union ( gabungan)
Soal :
Tampilkan Kode supplier, berapa kali pemasokkan ( cacah pasok ) dan jumlah pasok,
atau total pasok per supplier. Kode supplier yang ditampilkan adalah ‘EJ-01’
Soal :
Tampilkan Kode supplier, berapa kali pemasokkan ( cacah pasok ) dan jumlah pasok,
atau total pasok per supplier. Kode supplier yang ditampilkan adalah ‘EJ-02’
2013 Pemrograman Basis Data dan SQL Modul 01 Pusat Bahan Ajar dan eLearning
3 Team Dosen http://www.mercubuana.ac.id
Soal :
Tampilkan Kode supplier, berapa kali pemasokkan ( cacah pasok ) dan jumlah pasok, atau
total pasok per supplier. Kode supplier yang ditampilkan adalah ‘EB-01’ dan ‘EB-02’
Soal :
Tampilkan kode supplier, berapa kali pemasokkan (cacah pasok), jumlah pasok atau
total pasok per supplier, kode supplier yang ditampilkan adalah ‘EJ-01’ dan ‘EJ-02’
2013 Pemrograman Basis Data dan SQL Modul 01 Pusat Bahan Ajar dan eLearning
4 Team Dosen http://www.mercubuana.ac.id
Soal :
Tampilkan kode supplier, berapa kali pemasokkan, jumlah pasok atau total pasok per
supplier. Kode supplier yang ditampilkan ‘EJ-01’, ‘EJ-02’, ‘EB-01’, ‘EB-02’
Intersection
Soal :
Tampilkan Kode barang dan kode supplier yang memiliki jumlah pasok lebih besar
atau sama dengan 4.
2013 Pemrograman Basis Data dan SQL Modul 01 Pusat Bahan Ajar dan eLearning
5 Team Dosen http://www.mercubuana.ac.id
Soal :
Tampilkan Kode barang dan kode supplier yang memiliki jumlah pasok kurang dari
atau sama dengan 8.
Soal :
Tampilkan Kode barnag dan kode supplier yang memiliki jumlah pasok lebih besar
atau sama dengan 4 dan lebih kecil sama dengan 8.
2013 Pemrograman Basis Data dan SQL Modul 01 Pusat Bahan Ajar dan eLearning
6 Team Dosen http://www.mercubuana.ac.id
Soal :
Tampilkan kode barang dan berapa kali terjadi pembelian untuk setiap kode barang
tertentu (cacah pembelian)
Soal :
Tampilkan kode barang dan berapa kali terjadi pemasokkan untuk setiap kode barang
tertentu (cacah pemasokkan)
2013 Pemrograman Basis Data dan SQL Modul 01 Pusat Bahan Ajar dan eLearning
7 Team Dosen http://www.mercubuana.ac.id
Soal :
Tampilkan kode barang dimana banyaknya pembelian sama dengan banyaknya
pemasokkan (cacah_beli = cacah_pasok)
Difference / Minus
Soal :
(Query 1) Tampilkan kode barang, banyaknya pasokan dan jumlah pasokan untuk
semua kode barang
2013 Pemrograman Basis Data dan SQL Modul 01 Pusat Bahan Ajar dan eLearning
8 Team Dosen http://www.mercubuana.ac.id
Soal :
(Query 2) Tampilkan kode barang, banyaknya pasokan dan jumlah pasokan untuk
semua kode barang yang jumlah pemasokannya > 15
Soal :
(Quey 1 minus Query 2) Tampilkan kode barang, banyaknya pasokan dan jumlah
pasokan untuk kode barang yang jumlah pasokannya lebih kecil atau sama dengan 15.
Gunakan operasi minus
2013 Pemrograman Basis Data dan SQL Modul 01 Pusat Bahan Ajar dan eLearning
9 Team Dosen http://www.mercubuana.ac.id
Proyeksi / Distinct
Soal :
Tampilkan jumlah pembelian berdasarkan kode barang dan tanggal pembelian
Soal :
Tampilkan jumlah pembelian berdasarkan kode barang dan tanggal pembelian.
Setelah ada perintah Distinct
2013 Pemrograman Basis Data dan SQL Modul 01 Pusat Bahan Ajar dan eLearning
10 Team Dosen http://www.mercubuana.ac.id
Program dan Tampilan :
Soal :
Tampilkan nama barang, tanggal pasokan dan jimlah pasokan barang.
2013 Pemrograman Basis Data dan SQL Modul 01 Pusat Bahan Ajar dan eLearning
11 Team Dosen http://www.mercubuana.ac.id
Soal :
Tampilkan nama supplier, tanggal pasokan dan jumlah pemasokan barang
Soal :
Tampilkan nama barang, nama supplier, pasokan, dan jumlah pasokan barang
2013 Pemrograman Basis Data dan SQL Modul 01 Pusat Bahan Ajar dan eLearning
12 Team Dosen http://www.mercubuana.ac.id
Outer joint ( left outer joint / right outer joint )
Left outer joint
Soal :
Tampilkan kode barang, nama barang, keterangan, tanggal pasok, dan jumlah pasok.
Keterangan yang kosong harus ditampilkan untuk menunjukkan barang apa saja yang
tidak memiliki keterangan
2013 Pemrograman Basis Data dan SQL Modul 01 Pusat Bahan Ajar dan eLearning
13 Team Dosen http://www.mercubuana.ac.id
Right outer joint
Soal :
Tampilkan kode barang, nama barnag, tanggal pasok dan jumlah pasok. Jumlah
barnag yang kosong pun harus ditampilkan untuk menunjukkan barnag apa saja yang
tidak di pasok.
2013 Pemrograman Basis Data dan SQL Modul 01 Pusat Bahan Ajar dan eLearning
14 Team Dosen http://www.mercubuana.ac.id
Soal :
Tampilkan kode supplier, nama supplier, alamat supplier, tanggal pasok dan jumlah
pasok. Alamat yang kosong pun harus ditampilkan untuk menunjukkan supplier mana
saja yang tidak mempunyai alamat.
2013 Pemrograman Basis Data dan SQL Modul 01 Pusat Bahan Ajar dan eLearning
15 Team Dosen http://www.mercubuana.ac.id
Right outer joint
Soal :
Tampilkan kode supplier, nama supplier, tanggal pasok dan jumlah pasok. Jumlah
pembelian yang kosong pun harus ditampilkan untuk menunjukkan supplier mana saja
yang tidak mempunyai alamat.
2013 Pemrograman Basis Data dan SQL Modul 01 Pusat Bahan Ajar dan eLearning
16 Team Dosen http://www.mercubuana.ac.id
Daftar Pustaka
Alan Denis, Barbara Haley Wixon, David Tagerden, System Analys and Design : an Object –
Oriented Approach with UML 2.0, John Willey and Sons, 2005
Henry C. Lucas Jr., The Analysis, Design and Implementation of Information Systems 4 th,
McGraw Hill, 1992
Satzinger, Jackson, Burd, Object-Oriented Analysis and Design with the Unified Process,
Course Technology, 2005
Simon Bennet, Steve McRobb and Ray Farmer, Object-Oriented System Analysis and Design
Using UML, McGraw Hill, 2006
Wendy and Michael Boggs, UML with Rational Rose 2002, Sibex Inc., 2002
2013 Pemrograman Basis Data dan SQL Modul 01 Pusat Bahan Ajar dan eLearning
17 Team Dosen http://www.mercubuana.ac.id
MODUL PERKULIAHAN
PEMROGRAMAN
BASIS DATA DAN
SQL
Modul Standar untuk
digunakan dalam Perkuliahan
di Universitas Mercu Buana
13
Ilmu Komputer Sistem Informasi 87007 Team Dosen
Abstract Kompetensi
SDLC, RAD, Design Tersturktur, Class Memahami siklus pengembangan
dan Object sistem, memahami metodhologi
pengembangan sistem, mengenal UML
2013 Pemrograman Basis Data dan SQL Modul 01 Pusat Bahan Ajar dan eLearning
1 Team Dosen http://www.mercubuana.ac.id
2013 Pemrograman Basis Data dan SQL Modul 01 Pusat Bahan Ajar dan eLearning
2 Team Dosen http://www.mercubuana.ac.id
PENGENALAN PL/SQL
Praktek 8
Soal :
Melakukan transaksi update pada table Barang, mengubah nama Televisi menjadi
TV. Kemudian tambahkan perintah commit setelah anda selesai melakukan transaksi
terhadap isi database.
Rollback
Soal :
Lakukan penghapusan data pada table pasok yang kodenya ‘PAS-E012. Kemudian
setelah di hapus, anda ingin mengembalikan baris yang sudah dihapus tersebut seperti
semula.Gunakan perintah rollback.
2013 Pemrograman Basis Data dan SQL Modul 01 Pusat Bahan Ajar dan eLearning
3 Team Dosen http://www.mercubuana.ac.id
Pengenalan PL / SQL
Soal :
Pengenalan blok PL / SQL
2013 Pemrograman Basis Data dan SQL Modul 01 Pusat Bahan Ajar dan eLearning
4 Team Dosen http://www.mercubuana.ac.id
Soal :
Pengenalan blok PL / SQL bila pada kasus di atas tidak dituliskan bagian eksepsi
maka akan terdapat kesalahan yang diberikan pada oracle.
Percabangan
Satu kondisi
Soal :
Buatlah sebuah blik PL / SQL yang menampilkan teks PERSEDIAAN BARANG
TELAH HABIS dari tabel barang yang nama barangnya LEMARI ES dan jika stok dari
barang tersebut sama dengan 0.
2013 Pemrograman Basis Data dan SQL Modul 01 Pusat Bahan Ajar dan eLearning
5 Team Dosen http://www.mercubuana.ac.id
Dua Kondisi
Soal :
Buatlah sebuah blik PL / SQL yang menampilkan teks PERSEDIAAN BARANG
TELAH HABIS jika jumlah stok dari LEMARI ES sama dengan 0. jika tidak, maka
teks yang ditampilkan adalah PERSEDIAAN BARANG MASIH ADA.
Soal :
Buatlah sebuah blik PL / SQL yang menampilkan teks PERSEDIAAN BARANG
TELAH HABIS jika jumlah stok dari LEMARI ES sama dengan 0, PERSEDIAAN
BARANG KURANG DARI 10 jika jumlah stoknya kurang dari 10, sedangkan jika
jumlah stok lebih dari 10 atau sama dengan 10, teks tang ditampilkan adalah
PERSEDIAAN MASIH BANYAK.
2013 Pemrograman Basis Data dan SQL Modul 01 Pusat Bahan Ajar dan eLearning
6 Team Dosen http://www.mercubuana.ac.id
Program dan Tampilan :
Pengulangan
Loop ... End Loop
2013 Pemrograman Basis Data dan SQL Modul 01 Pusat Bahan Ajar dan eLearning
8 Team Dosen http://www.mercubuana.ac.id
Daftar Pustaka
Alan Denis, Barbara Haley Wixon, David Tagerden, System Analys and Design : an Object –
Oriented Approach with UML 2.0, John Willey and Sons, 2005
Henry C. Lucas Jr., The Analysis, Design and Implementation of Information Systems 4 th,
McGraw Hill, 1992
Satzinger, Jackson, Burd, Object-Oriented Analysis and Design with the Unified Process,
Course Technology, 2005
Simon Bennet, Steve McRobb and Ray Farmer, Object-Oriented System Analysis and Design
Using UML, McGraw Hill, 2006
Wendy and Michael Boggs, UML with Rational Rose 2002, Sibex Inc., 2002
2013 Pemrograman Basis Data dan SQL Modul 01 Pusat Bahan Ajar dan eLearning
9 Team Dosen http://www.mercubuana.ac.id
2013 Pemrograman Basis Data dan SQL Modul 01 Pusat Bahan Ajar dan eLearning
10 Team Dosen http://www.mercubuana.ac.id
MODUL PERKULIAHAN
PEMROGRAMAN
BASIS DATA DAN
SQL
Modul Standar untuk
digunakan dalam Perkuliahan
di Universitas Mercu Buana
14
Ilmu Komputer Sistem Informasi 87007 Team Dosen
Abstract Kompetensi
SDLC, RAD, Design Tersturktur, Class Memahami siklus pengembangan
dan Object sistem, memahami metodhologi
pengembangan sistem, mengenal UML
2013 Pemrograman Basis Data dan SQL Modul 01 Pusat Bahan Ajar dan eLearning
1 Team Dosen http://www.mercubuana.ac.id
2013 Pemrograman Basis Data dan SQL Modul 01 Pusat Bahan Ajar dan eLearning
2 Team Dosen http://www.mercubuana.ac.id
PL/SQL PLUS
Praktek 9
Fasilitas dalam SQLPlus
Fungsi validasi pada SQLPlus
2013 Pemrograman Basis Data dan SQL Modul 01 Pusat Bahan Ajar dan eLearning
3 Team Dosen http://www.mercubuana.ac.id
Soal Lat 02 :
set termout on
set echo off
set verify off
prompt ****************************************************
prompt *** LATIHAN KE 2 DENGAN MEMAKAI SINGLE AMPERSAND ***
prompt ****************************************************
prompt ****** ketik nama variabel v_ename = 'SMITH' *******
select * from emp where ename = &v_ename;
set termout on
set echo off
set verify off
prompt ****************************************************
prompt *** LATIHAN KE 2 DENGAN MEMAKAI SINGLE AMPERSAND ***
2013 Pemrograman Basis Data dan SQL Modul 01 Pusat Bahan Ajar dan eLearning
4 Team Dosen http://www.mercubuana.ac.id
prompt ****************************************************
prompt ****** ketik nama variabel v_ename = 'SMITH' *******
select * from emp where ename = &v_ename;
prompt *** SELESAI ***
Soal Lat 03 :
set termout on
set echo off
set verify off
prompt ******************************************************
prompt **** LATIHAN KE 3 DENGAN MEMAKAI DOUBLE AMPERSAND
****
prompt ******************************************************
prompt ********* PERHATIKAN BENTUK PERINTAH SQLNYA **********
select dname,loc from dept where deptno = &v_deptno;
set termout on
set echo off
set verify off
prompt ******************************************************
prompt **** LATIHAN KE 3 DENGAN MEMAKAI DOUBLE AMPERSAND
****
prompt ******************************************************
prompt ********* PERHATIKAN BENTUK PERINTAH SQLNYA
**********
select dname,loc from dept where deptno = &v_deptno;
2013 Pemrograman Basis Data dan SQL Modul 01 Pusat Bahan Ajar dan eLearning
5 Team Dosen http://www.mercubuana.ac.id
Soal Lat 04 :
set termout on
set echo off
set verify off
prompt **********************************************
prompt *** LATIHAN KE 4 MENGGUNAKAN FUNGSI ACCEPT ***
prompt **********************************************
accept v_dept prompt 'masukkan nomor deptno:'
select deptno,dname from dept where deptno = &v_deptno;
2013 Pemrograman Basis Data dan SQL Modul 01 Pusat Bahan Ajar dan eLearning
6 Team Dosen http://www.mercubuana.ac.id
Soal Lat 05 :
set termout on
set echo off
set verify off
prompt *******************************************************
prompt *** LATIHAN KE 5 MENGGUNAKAN BEBERAPA FUNGSI
LAYOUT ***
prompt *******************************************************
prompt ** Perhatikan penggunaan fungsi layout di bawah ini **
set colsep '|'
set underline =
set pagesize 40
set numformat 999,999
set null kosong
select empno, ename, job, hiredate, sal, comm, deptno from emp;
2013 Pemrograman Basis Data dan SQL Modul 01 Pusat Bahan Ajar dan eLearning
7 Team Dosen http://www.mercubuana.ac.id
Soal Lat 06 :
set termout on
set echo off
set verify off
prompt *******************************************************
prompt *** LATIHAN KE 6 MENGGUNAKAN FUNGSI TAMPILAN
FORMAT ***
prompt ******************** Fungsi break *********************
prompt *******************************************************
break on deptno skip 1
select deptno, ename, job, mgr, hiredate, sal, comm from emp order by deptno;
set termout on
set echo off
set verify off
prompt *******************************************************
2013 Pemrograman Basis Data dan SQL Modul 01 Pusat Bahan Ajar dan eLearning
8 Team Dosen http://www.mercubuana.ac.id
prompt *** LATIHAN KE 6 MENGGUNAKAN FUNGSI TAMPILAN
FORMAT ***
prompt ******************** Fungsi break *********************
prompt *******************************************************
break on deptno skip 1
select deptno, ename, job, mgr, hiredate, sal, comm from emp order by deptno;
Soal Lat 07 :
set termout on
set echo off
set verify off
prompt *******************************************************
prompt *** LATIHAN KE 7 MENGGUNAKAN FUNGSI TAMPILAN
FORMAT ***
prompt ******************** Fungsi Compute *******************
prompt *******************************************************
break on deptno skip 1
compute max of sal on deptno
select deptno, ename, job, mgr, hiredate, sal, comm from emp order by deptno;
2013 Pemrograman Basis Data dan SQL Modul 01 Pusat Bahan Ajar dan eLearning
9 Team Dosen http://www.mercubuana.ac.id
prompt *** SELESAI ***
2013 Pemrograman Basis Data dan SQL Modul 01 Pusat Bahan Ajar dan eLearning
10 Team Dosen http://www.mercubuana.ac.id
Soal Lat 08 :
set termout on
set echo off
set verify off
prompt***********************************************************
prompt***LATIHAN KE 8 MENGGUNAKAN FUNGSI TAMPILKAN
FORMAT***
prompt***FUNGSI COLUMN
prompt***********************************************************
set pagesize 50
2013 Pemrograman Basis Data dan SQL Modul 01 Pusat Bahan Ajar dan eLearning
11 Team Dosen http://www.mercubuana.ac.id
set linesize 100
set underline"="
clear breaks
clear compute
clear sql
prompt***Selesai***
set termout on
set echo off
set verify off
prompt***********************************************************
prompt***LATIHAN KE 8 MENGGUNAKAN FUNGSI TAMPILKAN
FORMAT***
prompt***FUNGSI COLUMN
prompt***********************************************************
set pagesize 50
set linesize 100
set underline"="
clear breaks
clear compute
clear sql
prompt***Selesai***
2013 Pemrograman Basis Data dan SQL Modul 01 Pusat Bahan Ajar dan eLearning
12 Team Dosen http://www.mercubuana.ac.id
Mengatur tampilan layer
Soal Lat 09 :
set termout on
set echo off
set verify off
Prompt *******************************************************
Prompt *** LATIHAN KE 9 MENGGUNAKAN FUNGSI TAMPILAN
FORMAT ***
Prompt ***************** FUNGSI TTITLE DAN BTITLE ************
Prompt *******************************************************
/* pemberian judul atas dan bawah dengan menggunakan ttitle dan btitle */
2013 Pemrograman Basis Data dan SQL Modul 01 Pusat Bahan Ajar dan eLearning
13 Team Dosen http://www.mercubuana.ac.id
ttitle center "*** LAPORAN KARYAWAN BERDASARKAN DEPARTEMEN
***" skip 1-
right "Hal :"format 999 sql.pno -
left "user :"sql.user skip""
/* perintah sql */
select a.dname, b.ename,b.sal from dept a, emp b where a.deptno=b.deptno;
/* pemberian judul atas dan bawah dengan menggunakan ttitle dan btitle */
ttitle center "*** LAPORAN KARYAWAN BERDASARKAN DEPARTEMEN
***" skip 1-
right "Hal :"format 999 sql.pno -
left "user :"sql.user skip""
2013 Pemrograman Basis Data dan SQL Modul 01 Pusat Bahan Ajar dan eLearning
14 Team Dosen http://www.mercubuana.ac.id
/* memberi format pada kolom */
column dname format a20 heading 'Departemen'
column ename format a30 heading 'Nama Karyawan'
column sal format 999G999D99 heading 'Gaji'
/* perintah sql */
select a.dname, b.ename,b.sal from dept a, emp b where a.deptno=b.deptno;
Soal Lat 10 :
set termout on
set echo off
set verify off
Prompt ********************************************************
2013 Pemrograman Basis Data dan SQL Modul 01 Pusat Bahan Ajar dan eLearning
15 Team Dosen http://www.mercubuana.ac.id
Prompt *** LATIHAN KE 10 MENGGUNAKAN FUNGSI TAMPILAN
FORMAT ***
Prompt ************** FUNGSI REPHEADER DAN REPFOOTER
**********
Prompt ********************************************************
/* pemberian judul atas dan bawah dengan menggunakan ttitle dan btitle pada
setiap halaman
*/
ttitle center "*** LAPORAN KARYAWAN BERDASARKAN DEPARTEMEN
***" skip 1-
right "Hal :"format 999 sql.pno -
left "user :"sql.user skip""
/* perintah sql */
select a.dname, b.ename,b.sal from dept a, emp b where a.deptno=b.deptno order
by a.dname;
2013 Pemrograman Basis Data dan SQL Modul 01 Pusat Bahan Ajar dan eLearning
16 Team Dosen http://www.mercubuana.ac.id
Program dan Tampilan :
set termout on
set echo off
set verify off
Prompt ********************************************************
Prompt *** LATIHAN KE 10 MENGGUNAKAN FUNGSI TAMPILAN
FORMAT ***
Prompt ************** FUNGSI REPHEADER DAN REPFOOTER
**********
Prompt ********************************************************
/* pemberian judul atas dan bawah dengan menggunakan ttitle dan btitle pada
setiap halaman
*/
ttitle center "*** LAPORAN KARYAWAN BERDASARKAN DEPARTEMEN
***" skip 1-
right "Hal :"format 999 sql.pno -
left "user :"sql.user skip""
2013 Pemrograman Basis Data dan SQL Modul 01 Pusat Bahan Ajar dan eLearning
17 Team Dosen http://www.mercubuana.ac.id
column sal format 999G999D99 heading 'Gaji'
/* perintah sql */
select a.dname, b.ename,b.sal from dept a, emp b where a.deptno=b.deptno order
by a.dname;
2013 Pemrograman Basis Data dan SQL Modul 01 Pusat Bahan Ajar dan eLearning
18 Team Dosen http://www.mercubuana.ac.id
Daftar Pustaka
Alan Denis, Barbara Haley Wixon, David Tagerden, System Analys and Design : an Object –
Oriented Approach with UML 2.0, John Willey and Sons, 2005
Henry C. Lucas Jr., The Analysis, Design and Implementation of Information Systems 4th,
McGraw Hill, 1992
Satzinger, Jackson, Burd, Object-Oriented Analysis and Design with the Unified Process,
Course Technology, 2005
Simon Bennet, Steve McRobb and Ray Farmer, Object-Oriented System Analysis and Design
Using UML, McGraw Hill, 2006
Wendy and Michael Boggs, UML with Rational Rose 2002, Sibex Inc., 2002
2013 Pemrograman Basis Data dan SQL Modul 01 Pusat Bahan Ajar dan eLearning
19 Team Dosen http://www.mercubuana.ac.id