Prak 1
Prak 1
Deskripsi Singkat
Praktikum basis data lanjut adalah praktikum yang mendukung mata kuliah basis data lanjut. Praktikum
ini menggunakan DBMS (Database management System) Oracle. Versi Oracle yang dipergunakan adalah
Oracle Database 11g Express Edition (XE), walau anda bisa saja menggunakan versi lain. Namun tampilan
pada materi praktikum ini akan menggunakan versi tersebut. Untuk memudahkan, praktikum ini juga
menggunakan Oracle SQL Developer versi 4. Materi praktikum akan berisi tutorial, latihan dan soal.
Tujuan
Prasyarat
6. Pada bagian Choose Destination Location, anda dapat menerima pilihan directory default, atau bisa
memilih directory lain (pastikan directory tidak memiliki spasi pada namanya). Klik Next.
7. Pada bagian port, anda bisa membiarkan sesuai port default. 1521: Oracle database listener. 2030:
Oracle Services untuk Microsoft Transaction Server. 8080: HTTP port untuk Oracle Database XE versi
GUI.
8. Pada bagian Specify Database Passwords, silakan masukkan password. Password ini akan digunakan
untuk akun database SYS dan SYSTEM (mirip seperti user root pada MySQL). Klik Next. Password
untuk akun INTERNAL dan ADMIN pada Oracle Application Express juga sama dengan password yang
digunakan SYS dan SYSTEM.
9. Pada bagian Summary, ulas kembali settingan yang anda pilih. Jika ada yang ingin diubah, anda bisa
pilih Back. Jika OK, maka klik Install.
1. Jika database sedang berhenti, maka mulai/start database dengan klik Logo Windows->All
Programs->Oracle Database 11g Express Edition->Start Database
2. Kemudian start menu Windows->All Programs->Oracle Database 11g Express Edition->Run SQL
Command Line untuk membuat SQL*Plus. Koneksi ke database dengan menggunakan akun SYSTEM
dan password yang anda buat pada langkah instalasi.
Oracle Database mengelompokkan informasi yang saling berkait ke dalam struktur logikal yang disebut
skema. Jadi struktur logikal tadi dinamakan objek skema. Ketika kita melakukan koneksi ke basis data
maka kita harus menggunakan username dan password, memilih skema yang diperlukan dan
memastikan username kita memiliki hak akses terhadap skema tersebut. Pada Oracle Database, nama
user (username) dan nama skema yang dikoneksikan oleh user, adalah sama.
Setiap objek di dalam Oracle Database termasuk ke dalam suatu skema. Beberapa objek yang dapat
dikandung oleh suatu skema adalah:
Tabel
Tabel adalah unit paling dasar pada penyimpanan di Oracle Database. Tabel menyimpan semua
data yang bisa diakses oleh user. Setiap tabel mengandung baris yang merepresentasikan record
data. Setiap baris terdiri dari kolom-kolom yang merepresentasikan field yang ada pada record.
Index
Index adalah objek pilihan yang dapat memperbaiki performa pencapaian data dari tabel. Index
diciptakan pada satu atau lebih kolom di tabel dan secara otomatis dipelihara dalam basis data.
View
Kita dapat menciptakan view yang mengkombinasikan informasi dari beberapa tabel sekaligus
dalam satu presentasi tabel virtual. View akan diperbarui otomatis sesuai dengan data sekarang
dari tabel asalnya setiap view tersebut kita akses. View juga bisa dibuat dari view yang lain.
Sequence
Ketika semua record pada tabel diharuskan bersifat distinct maka kita dapat menggunakan
sequence untuk menghasilkan list integer yang unik untuk kolom numerik, yang akan
merepresentasikan ID dari satu record.
Synonym
Synonym adalah alias pada objek skema. Kita dapat menggunakan synonym untuk keamanan
dan kemudahan. Contoh ketika kita ingin menyembunyikan kepemilikan dari suatu objek. Atau
ketika kita ingin menyederhanakan statemen SQL.
Stored subprogram
Nama lain dari stored subprogram adalah schema-level subprogram. Stored subprogram
merupakan prosedur dan fungsi yang disimpan di dalam basis data. Stored subprogram dapat
dipanggil oleh aplikasi klien yang ingin mengakses basis data.
Trigger
Trigger merupakan stored subprogram yang secara otomatis dijalankan oleh basis data ketika
peristiwa tertentu terjadi pada tabel atau view tertentu. Trigger dapat membatasi akses pada
data spesifik dan melakukan logging.
Package
Suatu package adalah kumpulan subprogram yang berkait, bersamaan dengan cursor eksplisit
dan variabelnya, yang disimpan dalam basis data sebagai unit untuk penggunaan berkelanjutan.
Seperti juga stored subprogram, package juga dapat dipanggil dari aplikasi klien yang ingin
mengakses basis data.
Oracle Database dapat diakses melalui suatu program klien tertentu seperti SQL *Plus atau SQL
Developer. Interface atau bahasa yang digunakan untuk mengakses data tersebut pada Oracle Database
menggunakan Structured Query Language (SQL). Oracle menyediakan ekstensi SQL yang dinamakan
Procedural Language/SQL (PL/SQL).
SQL *Plus (sequel plus) merupakan tool query yang secara otomatis tersedia pada setiap instalasi Oracle
Database. SQL *Plus memiliki antarmuka berupa command-line (proses input dan output secara text-
based). SQL *Plus bertingkah seperti klien ketika melakukan koneksi ke basis data. Pada tool SQL *Plus,
kita dapat memasukkan dan menjalankan perintah SQL *Plus, pernyataan SQL, pernyataan PL/SQL, dan
perintah sistem operasi.
1. Pada command prompt (ketik cmd pada search program), ketik sqlplus dan tekan Enter. Atau anda
dapat mengakses SQL *Plus langsung dari Start->All Programs-> Oracle Database 11g Express
Edition->Run SQL Command Line.
2. Masukkan username, tekan Enter.
3. Masukkan password, tekan Enter.
4. Sekarang kita berada pada lingkungan SQL *Plus. Anda dapat memasukkan perintah SQL *Plus, SQL,
PL/SQL dan perintah sistem operasi.
5. Untuk keluar dari SQL *Plus, ketik exit atau quit dan tekan Enter.
SQL Developer (sequel developer) merupakan versi grafis dari SQL *Plus. SQL Developer tersedia pada
proses instalasi Oracle Database atau dapat didownload terpisah dan gratis. Antarmuka SQL Developer
terdiri dari frame koneksi, tool (dengan menu), dan Worksheet. Pada bagian Worksheet inilah, kita
dapat memasukkan dan menjalankan pernyataan SQL, pernyataan PL/SQL, dan perintah SQL *Plus. SQL
Developer dapat didownload pada link berikut:
http://www.oracle.com/technetwork/developer-tools/sql-developer/downloads/
Oracle Application Express merupakan aplikasi untuk membangun dan men-deploy aplikasi web secara
cepat walaupun kita tidak memiliki pengetahuan pemrograman yang terbatas. Tool Application Builder
ini dapat membuat antarmuka HTML atau aplikasi lengkap yang menggunakan objek-objek skema.
Aplikasi yang terhasil terdiri dari halaman-halaman yang ditautkan menggunakan tab, button dan link
hypertext.
Skema HR merupakan skema contoh yang telah ada sebagai bagian dari Oracle Database. Skema HR
mengandung informasi terkait pegawai seperti departemen, lokasi, sejarah bekerja dan informasi terkait
lainnya. Secara bawaan (default), ketika skema HR terinstall, kondisi dalam keadaan terkunci (locked)
dan passwordnya expired. Jadi kita perlu unlock akun HR terlebih dahulu, caranya:
Jika sudah berhasil unlock akun HR, maka berikutnya kita sudah bisa menggunakan skema HR. Jika
menggunakan SQL *Plus maka anda buka sqlplus lalu ketik HR sebagai user-name lalu masukkan
password yang telah anda ubah sebelumnya.
Namun jika menggunakan SQL Developer, maka anda masukkan nama koneksi (bebas) lalu username
dan password sewaktu anda membuat New Connection.
Sesudah berhasil, maka layar connections akan terbuka, dan anda dapat menggunakannya dengan
membuka Worksheet (yang dibulatkan merah pada gambar di bawah) untuk mengetik script SQL atau
PL/SQL.
Dengan SQL *Plus anda dapat menampilkan objek apa saja yang ada di dalam skema. Jadi konsepnya
sedikit berbeda dengan MySQL. Jika pada MySQL untuk menampilkan tabel kita gunakan perintah show
tables. Perintah ini tidak dapat digunakan pada Oracle. Namun ada cara lainnya seperti yang dijelaskan
di bawah.
Sebetulnya perintahnya seperti yang ada dalam kotak biru. Namun tampilan akan menjadi sedikit
berantakan, tidak rapi dan susah dibaca. Agar rapi, kita dapat mengubah ukuran format kolomnya
seperti yang ditampilkan pada kotak warna merah. (Coba ekspresimen tidak mengubah format kolom,
bagaimana tampilannya?)
Dapat dilihat pada tampilan di atas, object_type nya berbeda-beda. Jadi andaikan hanya ingin
menampilkan data tabel saja, maka perintah tinggal diubah sedikit menjadi:
Untuk menampilkan struktur/properties dari suatu tabel, perintahnya mirip seperti di MySQL yaitu
dengan kata kunci describe. Contoh seperti di bawah:
LATIHAN 1
Berikut adalah contoh query untuk menampilkan isi dari tabel EMPLOYEES beserta potongan hasilnya.
Query di atas dapat diketik pada SQL *Plus maupun pada SQL Developer worksheet. Jika pada SQL
Developer worksheet, sesudah mengetik query, maka klik button Run Statement (Ctrl+Enter) untuk
menjalankan query dan menampilkan hasilnya.
Pada SQL Developer struktur/properties dan isi tabel semuanya dapat ditampilkan hanya dengan klik
pada kolom yang ada di tabel, lalu klik data.
Coba eksplorasi, dengan klik tab yang tersedia. Apa yang akan muncul. Berikut jika diklik tab Data.
LATIHAN 2
Kolom yang ingin ditampilkan dapat diberi nama lain, seperti contoh di bawah:
LATIHAN 3
SOAL-SOAL
1. Buatlah query untuk menampilkan first_name dan last_name dimana last_name haruslah berawalan
dengan 'Ma'.
Syarat yang berupa string dan character bersifat case sensitive. Coba ubah dengan 'ma' apa yang
terhasil?
2. Buatlah query untuk menampilkan first_name, last_name, salary dimana department_id=50 dan
salarynya lebih dari 5000.