Jumat, 19 Juni 2015

Kuis Praktikum Sistem Basis Data
Kuis Sistem Basis Data mengkonversi database dari PostgreSQL ke DB Qwiksite


Buka aplikasi ESF Database Migration Toolkit, pilihlah source PosgreSQL, dan pilihlah nama database yang akan di konversi

 Pilihlah destination MySQL, dan beri nama pada database tersebut

Lalu checklist semua tabel yang ada didalam database perbankan untuk dikonversi

Lalu tunggu proses hingga selesai

Kemudian Buka Browser untuk mengecek apakah database berhasil dikonversi dengan membuka alamat Localhost/phpmyadmin/

Buka aplikasi DBQwikSite, kemudian buka menu wizard pilih connection wizard untuk membuat koneksi, pilih database type : MySQL dan beri nama koneksi

Kemudian refresh Database list untuk mencari database yang telah di import ke mysql kemudian pilih finish

Kemudian Pilih Menu file - New Project – Project Wizard ganti project name menjadi bank – kemudian Pilih Next

Kemudian pilih Use and exsiting database connection pilih bank

Berikut Merupakan Tampilan Database dari dbqwksite 6, uncheck pada delete copy dan search

Lalu pilihlah tampilan

Tampilan Tabel Cabang_Bank

Tampilan Tabel Nasabah

Tampilan Nasabah_has_rekening

Tampilan Tabel Rekening

Tampilan Tabel Transaksi


Analisa : Database bank pertama dikonversi menjadi MySQL dengan aplikasi ESF Database Migration Toolkit, kemudian masuk DBqwiksite pertama membuat koneksi kemudian membuat akses database.

Selasa, 09 Juni 2015

Praktikum Sistem Basis Data Modul 10


Modul 10
ADVANCE SQL 2

A. Tujuan
Mahasiswa mampu menggunakan select statements beserta options-nya untuk mencari, mengolah, dan menampilkan data yang ada di basis data sesuai dengan kebutuhannya.

B. Dasar Teori

· IN
Contoh:
SELECT* FROM rekening WHERE kode_cabang IN (‘BRUM’, ‘BRUL’);

· NOT IN
Contoh:
SELECT* FROM rekening WHERE kode_cabang NOT IN (‘BRUS’, ‘BRUM’);

· BETWEEN
Contoh:
SELECT* FROM rekening WHERE saldo BETWEEN 500000 AND 1000000;

· NOT BETWEEN
Contoh:
SELECT* FROM rekening WHERE saldo NOT BETWEEN 500000 AND 1000000;

· AGGREGATE FUNCTIONS
Fungsi-fungsi untuk aggregate:

· MIN( )
Digunakan untuk mencari nilai terkecil dari sekumpulan record.
Contoh:
SELECT MIN(saldo) FROM rekening;

· MAX( )
Digunakan untuk mencari nilai terbesar dari sekumpulan record.
Contoh:
SELECT MAX(saldo) FROM rekening;

· COUNT( )
Digunakan untuk menghitung banyaknya record.
Contoh:
SELECT COUNT(nama_nasabah) FROM nasabah;

· SUM( )
Digunakan untuk menjumlahkan nilai-nilai dari sekumpulan record.
Contoh:
SELECT SUM(saldo) FROM rekening;



· AVG( )
Digunakan untuk menghitung rata-rata nilai dari sekumpulan record.
Contoh:
SELECT AVG(saldo) FROM rekening;

· GROUP BY
Digunakan untuk mengelompokkan sekumpulan record berdasarkan (kolom-kolom) tertentu.
Contoh:
SELECT jenis_transaksi FROM transaksi GROUP BY jenis_transaksi;

· HAVING
Merupakan pasangan dari GROUP BY, digunakan untuk membatasi kelompok yang ditampilkan:
SELECT jenis_transaksi, tanggal FROM transaski GROUP BY jenis_transaksi, tanggal HAVING jenis_transaksi=’kredit’;

· GROUP BY dan AGGREGATE
GROUP BY sangat cocok untuk aggregate functions. Dengan menggunakan GROUP BY, kita bisa mengelompokkan record-record dan menghitung min, max, count, sum dan avg untuk masing-masing kelompok.
Contoh:
SELECT kode_cabang, MIN(saldo), MAX(saldo), COUNT(*), SUM(saldo), AVG(saldo) FROM rekening GROUP BY kode_cabang;

C. Alat dan Bahan
1. Komputer dengan sistem operasi Windows 7.
2. Program aplikasi PostgreSQL 9.3.
3. Modul Praktikum Sistem Basis Data.

D. Langkah Kerja
1. Tampilkan nama nasabah, jenis transaksi, dan rata-rata jumlah transaksi (dalam rupiah) untuk tiap nasabah yang telah melakukan transaksi dan diurutkan berdasarkan rata-rata jumlah transaksi dengan kode berikut:

SELECT nasabah.nama_nasabah AS “Nama Nasabah”, transaksi.jenis_transaksi AS “Jenis Transaksi”, AVG(transaksi.jumlah) AS “Rata-rata (Rp)” FROM transaksi, nasabah WHERE nasabah.id_nasabah=transaksi.id_nasabahFK GROUP BY nasabah.nama_nasabah, transaksi.jenis_transaksi ORDER BY “Rata-rata (Rp)”;

2. Tampilkan nama nasabah, jenis transaksi, banyaknya transaksi, dan total jumlah transaksi (dalam rupiah) untuk tiap nasabah yang telah melakukan transaksi debit pada bulan Desember 2009 dan diurutkan berdasarkan total jumlah transaksi dari yang terbesar sampai terkecil dengan kode berikut:

SELECT nasabah.nama_nasabah AS “Nama Nasabah”, transaksi.jenis_transaksi AS “Jenis Transaksi”, COUNT(transaksi.jumlah) AS “Jumlah Transaksi”, SUM(transaksi.jumlah) AS “Jumlah (Rp)” FROM transaksi, nasabah WHERE nasabah.id_nasabah=transaksi.id_nasabahFK GROUP BY nasabah.nama_nasabah, transaksi.jenis_transaksi ORDER BY “Jumlah Transaksi” DESC;


3. Tampilkan nama cabang bank, jenis transaksi, total jumlah transaksi (dalam rupiah), dan banyaknya transaksi yang telah dilayani oleh tiap cabang bank dan diurutkan berdasarkan nama cabang bank dan jenis transaksi dengan kode berikut:

SELECT cabang_bank.nama_cabang AS “Nama Cabang”, transaksi.jenis_transaksi AS “Jenis Transaksi”, SUM(transaksi.jumlah) AS “Jumlah (Rp)”, COUNT(transaksi.jumlah) AS “Jumlah Transaksi” FROM transaksi, cabang_bank, rekening WHERE cabang_bank.kode_cabang=rekening.kode_cabangFK AND rekening.no_rekening=transaksi.no_rekeningFK GROUP BY cabang_bank.nama_cabang, transaksi.jenis_transaksi ORDER BY cabang_bank.nama_cabang, transaksi.jenis_transaksi;



4. Tampilkan nama cabang bank, jenis transaksi, dan rata-rata jumlah transaksi (dalam rupiah) untuk semua transaksi yang memiliki rata-rata jumlah transaksi di atas Rp 100.000 dan diurutkan berdasarkan nama cabang ban dengan kode berikut:

SELECT cabang_bank.nama_cabang AS “Nama Cabang”, transaksi.jenis_transaksi AS “Jenis Transaksi”, AVG(transaksi.jumlah) AS “Rata-rata (Rp)” FROM transaksi, cabang_bank, rekening GROUP BY cabang_bank.nama_ca bang, transaksi.jenis_transaksi, rekening.kode_cabangFK, cabang_bank.kode_cabang, transaksi.no_rekeningFK, rekening.no_rekening HAVING rekening.kode_cabangFK=cabang_bank.kode_cabang AND transaksi.no_rekeningFK=rekening.no_rekening AND AVG(transaksi.jumlah) > 100000 ORDER BY cabang_bank.nama_cabang;


5. Tampilkan nama nasabah dan banyaknya transaksi yang telah dilayani oleh Bank Rut Unit Surakarta dari 15 November 2009 sampai 1 Desember 2009 dan diurutkan berdasarkan nama nasabah dengan kode berikut:

SELECT nasabah.nama_nasabah AS “Nama Nasabah”, COUNT(transaksi.jumlah) AS “Jumlah Transaksi” FROM transaksi, cabang_bank, rekening, nasabah WHERE rekening.kode_cabangFK=cabang_bank.kode_cabang AND transaksi.no_rekeningFK=rekening.no_rekening AND transaksi.id_nasabahFK=nasabah.id_nasabah AND transaksi.tanggal BETWEEN ‘2009-11-15’ AND ‘2009-12-1’ AND cabang_bank.nama_cabang=’Bank Rut Unit Surakarta’ GROUP BY nasabah.nama_nasabah ORDER BY nasabah.nama_nasabah;


E. Analisa
Dari praktikum di atas, dapat saya tarik kesimpulan bahwa untuk menampilkan record-record tertentu ada beberapa alternatif perintah yang digunakan. Jadi, kita bisa memilih perintah mana yang akan digunakan tergantung kebutuhan dan efektivitas.

F. Tugas
1. Tampilkan jumlah transaksi yang ditangani oleh masing-masing cabang bank!

2. Tampilkan nama nasabah dan jumlah saldo yang memiliki saldo antara Rp 500.000 sampai Rp 2.000.000!
3. Tampilkan nama nasabah, tanggal transaksi, dan jumlah transaksi dalam Rp di mana jumlah transaksi di atas Rp 100.000 dan urutkan berdasarkan jumlah transaksi dari yang besar ke yang kecil!

Selasa, 02 Juni 2015

Praktikum Sistem Basis Data Modul 9


  
  Modul 9
Advance SQL 1
  A.    TUJUAN
Mahasiswa mampu menggunakan select statements beserta options-nya untuk mencari, mengelola dan menampilkan data yang ada di basis data sesuai dengan kebutuhannya.

  B.     LANDASAN TEORI
1.      IN
Contoh :
SELECT*FROM rekening WHERE kode_cabang IN (‘BRUM’,’BRUL’);
2.      NOT IN
Contoh :
SELECT*FROM rekening WHERE kode_cabang NOT IN (‘BRUS’,’BRUM’)
-          Nilai NULL tidak akan tampil dalam IN dan NOT IN.
-          Perhatikan perbedaan penggunaan OR dan AND dalam IN dan NOT IN.
3.      BETWEEN
Contoh :
SELECT*FROM rekening WHERE saldo BETWEEN 500000 AND 1000000;
4.      NOT BETWEEN
Contoh :
SELECT*FROM rekening WHERE saldo NOT BETWEEN 500000 AND 1000000;
5.      AGGREGATE FUNCTION
a.      MIN ( )
Digunakan untuk mencari nilai terkecil dari sekumpulan record.
Contoh :
SELECT MIN(saldo) FROM rekening;
b.      MAX ( )
Digunakan untuk mencari nilai terbesar dari sekumpulan record.
Contoh :
SELECT MAX(saldo) FROM rekening;
c.       COUNT ( )
Digunakan untuk menghitung banyaknya record.
Contoh :
SELECT COUNT(nama_nasabah) FROM nasabah;
d.      SUM ( )
Digunakan untuk menjumlahkan nilai-nilai dari sekumpulan record.
Contoh :
SELECT SUM(saldo) FROM rekening;
e.       AVG ( )
Digunakan untuk menghitung rata-rata nilai dari sekumpulan record.
Contoh :
SELECT AVG(saldo) FROM rekening;
6.      GROUP BY
Digunakan untuk mengelompokkan sekumpulan record berdasrkan kolom-kolom tertentu.
Contoh :
SELECT jenis_transaksi FROM transaksi GROUP BY jenis_transaksi;
7.      HAVING
Merupakan pasanagan dari GROUP BY digunakan untuk menbatasi kelompok yang ditampilkan.
Contoh :
SELECT jenis_transaksi, tanggal FROM transaksi GROUP BY jenis_transaksi tanggal HAVING jenis_transaksi=’kredit’;
8.      GROUP BY dan AGGREGATE
Contoh :
SELECT kode_cabang, MIN(saldo), MAX(saldo), COUNT(*), SUM(saldo), AVG(saldo) FROM rekening GROUP BY kode_cabang;

  C.    ALAT DAN BAHAN
1.      Laptop dengan sistem operasi Windows 7
2.      Program aplikasi PostgreSQL
3.      Modul Praktikum Sistem Basis Data

  D.    LANGKAH-LANGKAH PRAKTIKUM
1.      Tampilkan tanggal transaksi, jenis transaksi, dan jumlah transaksi untuk semua transaksi yang dilakukan oleh Sutopo dan Canka Lokananta dan diurutkan berdasarkan tanggal transaksi dengan kode berikut :
SELECT transaksi.tanggal, transaksi.jenis_transaksi, transaksi.jumlah FROM nasabah, transaksi WHERE nasabah.id_nasabah=transaksi.id_nasabahFK AND nasabah.nama_nasabah IN (‘Sutopo’,’Canka Lokananta’) ORDER BY transaksi.tanggal;
 

2.      Tampilkan tanggal transaksi, nama nasabah, jenis transaksi, dan jumlah transaksi untuk semua transaksi yang terjadi dari 15 November sampai 20 November 2009 dan diurutkan berdasarkan tanggal transaksi dan nama nasabah dengan kode berikut :
SELECT transaksi.tanggal, nasabah.nama_nasabah transaksi.jenis_transaksi, transaksi.jumlah FROM nasabah, transaksi WHERE transksi.tanggal BETWEEN ‘2009-11-15’ AND ‘2009-11-20’ AND nasabah.id_nasabah=transaksi.id_nasabahFK ORDER BY transaksi.tanggal, nasabah.nama_nasabah;

3.      Tampilkan jenis transaksi dan total jumlah transaksi (dalam rupiah) untuk tiap jenis transaksi dan diurutkan berdasarkan jenis transaksi dengan kode berikut :
SELECT transaksi.jenis_transaksi AS “Jenis Transaksi”, SUM(jumlah) AS “Jumlah (Rp)” FROM transaksi GROUP BY transaksi.jenis_transaksi ORDER BY transaksi.jenis_transaksi;


4.      Tampilkan jenis transaksi, jumlah transaksi yang terbesar serta yang terkecil untuk tiap jenis transaksi dan diurutkan berdasarkan jenis transaksi dengan kode berikut:
SELECT jenis_transaksi AS “Jenis Transaksi”, MAX(jumlah) AS “Transaksi Terbesar”, MIN(jumlah) AS “Transaksi Terkecil” FROM transaksi GROUP BY transaksi.jenis_transaksi ORDER BY transaksi.jenis_transaksi;


5.      Tampilkan jenis transaksi, total jumlah transaksi (dalam rupiah), dan banyaknya transaksi yang tercatat untuk tiap jenis transaksi yang terjadi sebelum bulan Desember 2009 dan diurutkan berdasarkan jenis transaksi dengan kode berikut :
SELECT jenis_transaksi AS “Jenis Transaksi”, SUM(jumlah) AS “Jumlah (Rp)”, COUNT(jumlah) AS “Jumlah Transaksi” FROM transaksi WHERE tanggal BETWEEN ‘2009-11-1’ AND ‘2009-11-30’ GROUP BY transaksi.jenis_transaksi ORDER BY transaksi.jenis_transaksi;



  E.     TUGAS
1.      Tampilkan jenis transaksi, jumlah transaksi dalam Rp dan total transaksi untuk nasabah yang bernama ‘Kartika Padmasari’ untuk masing-masing jenis transaksi!




2.      Berapa jumlah total saldo yang dimiliki oleh Maryati?

Minggu, 17 Mei 2015

Praktikum Sistem Basis Data Modul 8


MODUL 8
PENGGUNAAN SELECT STATEMENT 2

   A.    TUJUAN
1.      Mahasiswa mampu menggunakan instruksi Create Table dan options-nya menggunakan PostgreSQL untuk membuat tabel-tabel basis data sesuai kebutuhan.
2.      Mahasiswa mampu memasukkan records ke dalam tabel-tabel basis data.

   B.     LANDASAN TEORI

SELECT STATEMENT digunakan untuk menentukan atau memilih data yang akan ditampilkan ketika melakukan query terhadap basis data. Struktur select statement terhadap basis data di postgreSQL adalah sebagai berikut :
SELECT[ALL] DISTINCT | ON (expression [,…] ) ] ]
*| expression [ ASoutput_name] [,…]
[FROM from_item[,…]]
[WHERE condition]
[GROUP BY expression [,..]]
[HAVING condition [,..]
[{UNION | INTERSECT | EXCEPT }[ ALL ] select ]
[ORDER BY expression [ASC |DESC| USING operator ] [, . . .]]
[ FOR UPDATE [ OF tablename [, . .] ] ]
[LIMIT { count| ALL } ]
[OFFSET start]

   C.    ALAT DAN BAHAN
1.      Laptop dengan sistem operasi Windows 7
2.      Program aplikasi PostgreSQL
3.      Modul Praktikum Sistem Basis Data

   D.    LANGKAH-LANGKAH PRAKTIKUM
1.      Tampilkan nama nasabah, nomor rekening, pin, saldo untuk semua rekening yang jumlah saldonya lebih dari Rp 1.000.000 dan diurutkan berdasarkan nomor rekening. 

      SELECT nasabah.nama_nasabah, rekening.no_rekening, rekening.pin, rekening.saldo FROM rekening, nasabah, nasabah_has_rekening WHERE nasabah.id_nasabah=nasabah_has_rekening.id_nasabahFK AND rekening.no_rekening=nasabah_has_rekening.no_rekeningFK AND rekening.saldo > 1000000 ORDER BY rekenning.no_rekening; 
      



2.      Tampilan nomor rekening, pin, dan saldo untuk semua rekening yang ada di Bank Rut Unit Klaten dengan saldo maksimal Rp. 1.000.0000 dan di urutkan berdasarkan nomor rekening.   

      SELECT rekening.no_rekening, rekening.pin, rekening.saldo FROM rekening, cabang_bank WHERE cabang_bank.nama_cabang=’BANK RUT UNIT Klaten’ AND rekening.kode_cabangFK=cabang_bank.kode_cabang AND rekening.saldo <= 1000000 ORDER BY rekening.no_rekening;
 
3.      Tampilkan nama nasabah, nomor rekening, dan nama cabang bank untuk semua nasabah yang telah membuka rekening di suatu cabang bank dan diurutkan berdasarkan nama cabang bank dan nama nasabah.

SELECT nasabah.nama_nasabah, rekening.no_rekening, cabang_bank.nama_cabang FROM nasabah, rekening, cabang_bank, nasabah_has_rekening WHERE cabang_bank.kode_cabang=rekening.kode_rekeningFK AND nasabah_has_rekening.no_rekeningFK=rekening.no_rekening AND nasabah.id_nasabah=nasabah_has_rekening.id_nasabahFK ORDER BY cabang_bank.nama_cabang, nasabah.nama_nasabah;
 
4.      Tampilkan nama nasabah dan alamat nasabah untuk semua nasabah yang memiliki rekening di Bank Rut Unit Yogyakarta dan diurutkan berdasarkan nama nasabah.

SELECT nasabah.nama_nasabah, nasabah.alamat_nasabah FROM nasabah, rekening, cabang_bank, nasabah_has_nasabah WHERE cabang_bank.nama_cabang=’BANK RUT UNIT Yogyakarta’ AND cabang_bank.kode_cabangFK AND nasabah_has_rekening.no_rekeningFK=rekening.no_rekening AND nasabah.id_nasabah=nasabah_has_rekening.id_nasabahFK ORDER BY nasabah.nama_nasabah;



5.      Tampilkan nama nasabaha, alamat nasabaha, nomor rekening, serta saldo untuk semua nasabah dan semua rekening yang ada di database dan diurutkan berdasarkan nama nasabah dan nomor rekening.

SELECT nasabah.nama_nasabah, nasabah.alamat_nasabah, rekening.no_rekening, rekening.saldo FROM nasabah, rekening, nasabah_has_rekening WHERE nasabah_has_rekening.no_rekeningFK= rekening.no_rekening AND nasabah.id_nasabah=nasabah_has_rekening.id_nasabahFK ORDER BY nasabah.nama_nasabah, rekening.no_rekening;



   E.     TUGAS
1.      Tampilkan nomor rekening, nama nasabah, jenis transaksi, dan jumlah transaksi dimana jumlah transaksi = Rp 20.000!

SELECT rekening.no_rekening, nasabah.nama_nasabah, transaksi.jenis_transaksi, transaksi.jumlah FROM rekening, nasabah, transaksi WHERE rekening.no_rekening = transaksi.no_rekeningFK AND nasabah.id_nasabah= transaksi.id_nasabahFK AND transaksi.jumlah = 200000;

 
2.      Tampilkan nomor rekening, nama nasabah dan alamat nasabah dimana nama nasabah diawali dengan kata ‘Su’!


SELECT rekening.no_rekening,nasabah.nama_nasabah,nasabah.alamat_nasabah FROM rekening,nasabah, nasabah_has_rekening WHERE  nasabah.id_nasabah= nasabah_has_rekening.id_nasabahFK AND rekening.no_rekening = nasabah_has_rekening.no_rekeningFK AND nasabah.nama_nasabah >='su';

 
3.      Tampilkan nomor rekening dengan alias “Nomor Rekening”, nama nasabah dengan alias “Nama Nasabah”, jumlah transaksi dengan alias “Jumlah Ttransaksi” dimana jenis transaksi adalah debit! Urutkan berdasarka nama nasabah!

SELECT rekening.no_rekening AS "Nomor Rekening",nasabah.nama_nasabah AS "Nama Nasabah",transaksi.jumlah AS "Jumlah Transaksi" FROM rekening,nasabah,transaksi WHERE  nasabah.id_nasabah= transaksi.id_nasabahFK AND rekening.no_rekening = transaksi.no_rekeningFK AND transaksi.jenis_transaksi = 'debit' ORDER BY nasabah.nama_nasabah;