#Attribution1 { height:0px; visibility:hidden; display:none }

Naruto Shippuden Subtitle Indonesia

Download disini untuk menyaksikan kehebatan Naruto dan kawan-kawan.

This is default featured slide 2 title

Go to Blogger edit html and find these sentences.Now replace these sentences with your own descriptions..

Siklus Instruksi CPU

Siklus Instruksi CPU.

This is default featured slide 4 title

Go to Blogger edit html and find these sentences.Now replace these sentences with your own descriptions..

This is default featured slide 5 title

Go to Blogger edit html and find these sentences.Now replace these sentences with your own descriptions..

Selasa, 07 April 2015

Kardinalitas dan Modalitas Entity Realtionship Diagram

Analisa Kardinalitas dan Modalitas
Entity Relationship Diagram

1. Karinalitas : 
    merupakan spesifikasi dari sejumlah peristiwa dari satu objek yg dapat dihubungkan ke sejumlah                 peristiwa dari objek lain.
    Dua objek dapat dihubungkan sebagai :
     - Satu-ke-satu (1:1): suatu kejadian dari objek A dapat berhubungan dg satu dan hanya satu kejadian              dari objek B dan sebaliknya
     - Satu-ke-banyak (1:M): satu kejadian dari objek A dapat berhubungan dg satu atau lebih kejadian dari               objek B, tetapi satu kejadian dari objek B dapat berhubungan dg hanya satu kejadian dari objek B
     - Banyak-ke-banyak (M:N): sebuah kejadian dari objek A dapat berhubungan dg satu atau lebih                           kejadian dari objek B, dan satu kejadian dari objek B dapat berhubungan dg satu atau lebih kejadian             dari objek A.

2. Modalitas :
    - Kardinalitas tidak memberikan indikasi apakah objek data tertentu harus berpartisipasi dalam                         hubungan.
    - Modalitas dari Hubungan adalah 0 jika tidak ada kebutuhan eksplisit untuk hubungan yang terjadi atau         hubungan itu opsional.
    - Modlitas adalah 1 jika kejadian dari hubungan bersifat wajib.

3. Contoh analisa Kardinalitas dan Modalitas.
Gambar 1. Contoh kardinalitas dan modalitas

Dari gambar 1 dapat dijelaskan kardinalitas dan modalitasnya. Gambar 1 menunjukkan hubungan antara
Tindakan Perbaikan dengan Pelanggan. Dimana posisi dari Tindakan Perbaikan dan Pelanggan merupakan sama-sama sebagai entity atau entitas. 

Dari kardinalitasnya :
  - Ada banyak tindakan perbaikan
  - Pelanggan tunggal menunggu tindakan perbaikan
Keduanya memiliki hubungan yang wajib, dimana "jika ada tindakan perbaikan, maka akan ada pelanggan yang menunggu tindakan perbaikan". Dan apabila "tidak ada pelanggan yang menunggu tindakan perbaikan, maka tidak ada tindakan perbaikan".

Dari Modalitasnya :
  - Ada situasi dimana tindakan perbaikan tidak diperlukan
  - Untuk melakukan tindakan perbaikan harus ada pelanggan
Keduanya memiliki hubungan, dimana "situasi dimana tindakan perbaikan tidak diperlukan, maka tidak ada pelanggan", dan apabila "ada pelanggan, maka diperlukan tindakan perbaikan".

Dalam menjelaskan sebuah ERD (Entity Relationship Diagram) tergantung bagaimana kebutuhan dan cara pandang seseorang dalam membacanya. Karena sebuah kebutuhan dalam hakekatnya tidak selalu sama.

Membuat Database Menggunakan PostgreSQL

MODUL 5
IMPLEMENTASI TABEL-TABEL BASIS DATA(1)


A. Tujuan
     Mahasiswa mampu membuat struktur tabel-tabel basis data berdasarkan perancangan di modul 3 dan        mengimplementasi tabel-tabel tersebut di basis data.

B. Landasan Teori
    Basis data dapat diimplementasikan berdasarkan E-R diagram yang telah dibuat. Implementasi                     database bisa:
     1. Secara manual (dengan perintah SQL ‘CREATE TABLE’)
     2. Secara semi-manual dengan bantuan client berbasis GUI (MySQL Front, PgAccess, phpPgAdmin).
     3. Secara otomatis dengan CASE Tools (DBDesigner)

     Tahap Pembuatan Tabel
       1. Membuat semua tabel yang paling utama (yang tidak memiliki FK).
       2. Membuat semua tabel yang berhubungan langsung (atau memiliki relationship) dengan tabel yang               dibuat di tahap sebelumnya. Mulailah secara urut dari tabel dengan jumlah FK yang paling sedikit ke              yang paling banyak.
       3. Ulangi tahap 2 sampai semua tabel selesai dibuat.

C. Membuat Tabel-tabel Database Bank
     - Tahap pembuatan tabel
        * Membuat tabel nasabah :
             create table nasabah(
             id_nasabah integer primary key,
             nama_nasabah varchar(45) not null,
             alamat_nasabah varchar(255) not null);

             select * from nasabah   /* perintah untuk menampilkan tabel nasabah */

        * Membuat tabel cabang_bank :
             create table cabang_bank(
             kode_cabang varchar (20) primary key,
             nama_cabang varchar(45) unique not null,
             alamat_cabang varchar(255) not null);*/

             select * from cabang_bank  /* perintah untuk menampilkan tabel cabang_bank */

        * Membuat tabel rekening :
             create table rekening(
             no_rekening integer primary key,
             kode_cabangfk varchar(20) references cabang_bank(kode_cabang) on delete cascade on update                   cascade,
             pin varchar(20) default '1234' not null,
             saldo integer default 0 not null);

             select * from rekening    /* perintah untuk menampilkan tabel rekening */

        * Membuat tabel transaksi :
             create table transaksi (
             no_transaksi serial primary key,
             id_nasabahfk integer references nasabah(id_nasabah) on delete set null on update cascade,
             no_rekeningfk integer references rekening(no_rekening) on delete set null on update cascade,
             jenis_transaksi varchar(20) default 'debit' not null,
             tanggal date default current_date not null,
             jumlah integer not null check (jumlah>=20000));

             select * from transaksi    /* perintah untuk menampilkan tabel transaksi */

        * Membuat tabel nasabah_has_rekening :
             create table nasabah_has_rekening(
             id_nasabahfk integer references nasabah(id_nasabah) on delete cascade on update cascade,
             no_rekeningfk integer references rekening(no_rekening) on delete cascade on update cascade,
             primary key(id_nasabahfk, no_rekeningfk));

             select * from nasabah_has_rekening  /* perintah menampilkan tabel nasabah_has_rekening*/

     - Tahap memasukkan nilai tabel
        * Memasukkan nilai tabel nasabah :
             insert into nasabah (id_nasabah, nama_nasabah, alamat_nasabah) values
             (1, 'sutopo', 'jl. jendral sudirman 12'),
             (2, 'maryati', 'jl. mt. haryono 31'),
             (3, 'suparman', 'jl. haasanudin 81'),
             (4, 'kartika padmasari', 'jl. manggis 15'),
             (5, 'budi eko prayogo', 'jl. kantil 30'),
             (6, 'satria eka jaya', 'jl. slamet riyadi 45'),
             (7, 'indri hapsari', 'jl. sutoyo 15'),
             (8, 'sari murti', 'jl. pangandaran 11'),
             (9, 'canka lokananta', 'jl. tidar 86'),
             (10, 'budi murtono', 'jl. merak 22');

        * Memasukkan nilai tabel cabang_bank :
             insert into cabang_bank (kode_cabang, nama_cabang, alamat_cabang) values
             ('brus', 'bank rut unit surakarta', 'jl. slamet riyadi 18'),
             ('brum', 'bank rut unit magelang', 'jl. p. tendean 63'),
             ('brub', 'bank rut unit boyolali', 'jl. ahmad yani 45'),
             ('bruk', 'bank rut unit klaten', 'jl. suparman 23'),
             ('bruy', 'bank rut unit yogyakarta', 'jl. anggrek 21'),
             ('bruw', 'bank rut unit wonogiri', 'jl. untung suropati 12');

        * Memasukkan nilai tabel rekening :
             insert into rekening (no_rekening, kode_cabangfk, pin, saldo) values
             (101, 'brus', 1111, 500000),
             (102, 'brus', 2222, 350000),
             (103, 'brus', 3333, 750000),
             (104, 'brum', 4444, 900000),
             (105, 'brum', 5555, 2000000),
             (106, 'brus', 6666, 3000000),
             (107, 'brus', 7777, 1000000),
             (108, 'brub', 0000, 5000000),
             (109, 'brub', 9999, 0),
             (110, 'bruy', 1234, 550000),
             (111, 'bruk', 4321, 150000),
             (112, 'bruk', 0123, 300000),
             (113, 'bruy', 8888, 255000);

        * Memasukkan nilai tabel nasabah_has_rekening :
             insert into nasabah_has_rekening(id_nasabahfk, no_rekeningfk) values
             (1, 104),
             (2, 103),
             (3, 105),
             (3, 106),
             (4, 101),
             (4, 107),
             (5, 102),
             (5, 107),
             (6, 109),
             (7, 109),
             (8, 111),
             (9, 110),
             (10, 113),
             (8, 112),
             (10, 108);

        * Memasukkan nilai tabel transaksi :
             insert into transaksi(no_transaksi, no_rekeningfk, id_nasabahfk, jenis_transaksi, tanggal, jumlah)
             values
             (1,       105,         3, 'debit', '2009-11-10', 50000),
             (2, 103, 2, 'debit', '2009-11-10', 40000),
             (3, 101, 4, 'kredit', '2009-11-12', 20000),
             (4, 106, 3, 'debit', '2009-11-13', 50000),
             (5, 107, 5, 'kredit', '2009-11-13', 30000),
             (6, 104, 1, 'kredit', '2009-11-15', 200000),
             (7, 110, 9, 'kredit', '2009-11-15', 150000),
             (8, 102, 5, 'debit', '2009-11-16', 20000),
             (9, 105, 3, 'kredit', '2009-11-18', 50000),
             (10, 107, 4, 'debit', '2009-11-19', 100000);
             (11, 103, 2, 'debit', '2009-11-19', 100000),
             (12, 104, 1, 'debit', '2009-11-19', 50000),
             (13, 107, 4, 'kredit', '2009-11-20', 200000),
             (14, 105, 1, 'debit', '2009-11-21', 40000),
             (15, 104, 1, 'kredit', '2009-11-22', 100000),
             (16, 101, 4, 'kreedit', '2009-11-22', 20000),
             (17, 103, 2, 'debit', '2009-11-22', 50000),
             (18, 102, 5, 'debit', '2009-11-25', 50000),
             (19, 108, 10, 'debit', '2009-11-26', 100000),
             (20, 106, 3, 'kredit', '2009-11-27', 50000),
             (21, 103, 2, 'kredit', '2009-11-28', 200000),
             (22, 105, 3, 'kredit', '2009-11-28', 100000),
             (23, 102, 5, 'debit', '2009-11-30', 20000),
             (24, 104, 1, 'debit', '2009-12-1', 50000),
             (25, 103, 2, 'debit', '2009-12-2', 40000),
             (26, 101, 4, 'debit', '2009-12-4', 50000),
             (27, 103, 2, 'kredit', '2009-12-5', 100000),
             (28, 102, 5, 'kredit', '2009-12-5', 200000),
             (29, 109, 7, 'debit', '2009-12-5', 100000),
             (30, 110, 9, 'debit', '2009-12-6', 20000);

        * Menampilkan tabel lewat Query :
           - ketikan perintah "select * from nama_tabel" pada lembar query, seperti berikut :
               select * from nasabah
           - kemudian klik tombol Query Execute (tombol segitiga hijau pada icon bar).
           - hasilnya akan seperti berikut :
Gambar 1. Tabel nasabah

Gambar 2. Tabel cabang_bank

Gambar 3. Tabel rekenning

        * Menampilkan tabel lewat PSQL console (Comandprompt) :
           - buka PSQL console : klik icon puzzel pada icon bar window awal PGAdmin.
           - untuk menampilkan daftar tabel yang ada ketikkan perintah : \dt
           - untuk menampilkan tabel database ketikkan perintah :
                select * from nama_tabel;
              contoh :
                select * from nasabah;
           - hasilnya akan seperti berikut :
Gambar 4. Perintah \dt untuk meanmpilkan daftar seluruh tabel

Gambar 5. Tabel nasabah

Gambar 6. Tabel cabang_bank


D. TUGAS MODUL 5
     - Tahap pembuatan tabel
        * Membuat tabel mahasiswa :
             create table mahasiswa(
             nim varchar(10) primary key,
             nama_mahasiswa varchar(45) not null,
             alamat_mahasiswa varchar(255) not null,
             angkatan integer not null);

             select * from mahasiswa   /* perintah untuk menampilkan tabel mahasiswa */

        * Membuat tabel dosen :
             create table dosen(
             nidn integer primary key,
             nama_dosen varchar(45) not null,
             alamat_dosen varchar(255) not null);

             select * from dosen  /* perintah untuk menampilkan tabel dosen */

        * Membuat tabel mata_kuliah :
             create table mata_kuliah(
             kode_mk varchar(10) primary key,
             nama_mk varchar(45) not null,
             jumlah_sks integer not null);*/

             select * from mata_kuliah    /* perintah untuk menampilkan tabel mata kuliah */

        * Membuat tabel ruang_kuliah :
             create table ruang_kuliah(
             kode_ruang varchar(10) primary key,
             fasilitas varchar(255),
             kapasitas integer);


             select * from ruang_kuliah    /* perintah untuk menampilkan tabel ruang_kuliah */

        * Membuat tabel mahasiswa_has_mata_kuliah :
             create table mahasiswa_has_mata_kuliah(
             nimfk varchar(10) references mahasiswa(nim) on delete cascade on update cascade,
             kode_mkfk varchar(10) references mata_kuliah(kode_mk) on delete cascade on update cascade,
             primary key(nimfk, kode_mkfk));


             select * from mahasiswa_has_mata_kuliah  /* menampilkan tabel mahasiswa has mata kuliah*/

     - Tahap memasukkan nilai tabel
        * Memasukkan nilai tabel mahasiswa :
             insert into mahasiswa(nim, nama_mahasiswa, alamat_mahasiswa, angkatan) values
             ('L200110061', 'aulia fanny', 'jl. asmara 13', 2011),
             ('L200120013', 'benny setiawan', 'jl. boyolai 18', 2012),
             ('L200130054', 'imam adi sulistyo', 'jl. embarkasi 21', 2013),
             ('L200130058', 'm. fikri khaidir', 'jl. mendungan 32', 2013),
             ('L200130059', 'adnan mahmudi', 'jl. gumpang 7', 2013),
             ('L200130061', 'rendy adhitya putra', 'jl. pabelan 2 no 32', 2013),
             ('L200130062', 'alvian dwi mardani', 'jl. gonilan 10', 2013);

        * Memasukkan nilai tabel dosen :
             insert into dosen(nidn, nama_dosen, alamat_dosen) values
             (0724125602, 'bambang setiaji', 'surakarta'),
             (0982346198, 'husni thamrin', 'yogyakarta'),
             (0872341857, 'sujalwo', 'yogyakarta'),
             (0627145718, 'm. halim', 'klaten'),
             (0821487527, 'sukirman', 'sragen');

        * Memasukkan nilai tabel mata_kuliah :
             insert into mata_kuliah(kode_mk, nama_mk, jumlah_sks) values
             ('tif20633', 'komunikasi data', 3),
             ('tif20933', 'probabilitas dan statisktik', 3),
             ('ums20112', 'bahasa inggris 2', 2),
             ('tif40233', 'sistem basisdata', 3),
             ('tif40433', 'sistem digital', 3),
             ('tif60532', 'data mining', 2),
             ('tif62033', 'kecerdasan buatan', 3);

        * Memasukkan nilai tabel ruang_kuliah :
             insert into ruang_kuliah(kode_ruang, fasilitas, kapasitas) values
             ('j0407', 'ac, kipas angin, proyektor', 45),
             ('j0410', 'ac, kipas angin, proyektor', 40),
             ('j0306', 'ac, led monitor', 20),
             ('jsem1', 'ac, luas, proyektor', 60);


        * Memasukkan nilai tabel mahasiswa_has_mata_kuliah :
             insert into mahasiswa_has_mata_kuliah(nimfk, kode_mkfk) values
             ('L200110061', 'tif60532'),
             ('L200120013', 'tif62033'),
             ('L200130054', 'tif40233'),
             ('L200130058', 'ums20112'),
             ('L200130059', 'tif20933'),
             ('L200130061', 'tif40433'),
             ('L200130062', 'tif40233'),
             ('L200110061', 'tif40433'),
             ('L200130058', 'tif20933'),
             ('L200130061', 'tif62033');


        * Menampilkan tabel lewat Query :
           - ketikan perintah "select * from nama_tabel" pada lembar query, seperti berikut :
               select * from nasabah
           - kemudian klik tombol Query Execute (tombol segitiga hijau pada icon bar).
           - hasilnya akan seperti berikut :
Gambar 7. Tabel mahasiswa

Gambar 8. Tabel dosen

Gambar 9. Tabel mahasiswa_has_mata_kuliah

        * Menampilkan tabel lewat PSQL console (Comandprompt) :
           - buka PSQL console : klik icon puzzel pada icon bar window awal PGAdmin.
           - untuk menampilkan daftar tabel yang ada ketikkan perintah : \dt
           - untuk menampilkan tabel database ketikkan perintah :
                select * from nama_tabel;
              contoh :
                select * from nasabah;
           - hasilnya akan seperti berikut :
Gambar 10. Perintah \dt untuk meanmpilkan daftar seluruh tabel

Gambar 11. Tabel mahasiswa

Gambar 12. Tabel dosen


Diberdayakan oleh Blogger.