tugas6

10 January 2013 10:02:35 Dibaca : 78
[Tanpa Konten]

Tugas 5 (921411073)

21 November 2012 23:06:59 Dibaca : 163

Normalisasi Database

Definisi Normalisasi

Normalisasi adalah suatu teknik untuk mengorganisasi data ke dalam tabel-tabel untuk memenuhi kebutuhan pemakai di dalam suatu organisasi.

Tujuan dari normalisasi

1.      Untuk menghilangkan kerangkapan data

2.      Untuk mengurangi kompleksitas

3.      Untuk mempermudah pemodifikasian data

Proses Normalisasi

1.      Data diuraikan dalam bentuk tabel, selanjutnya dianalisis berdasarkan persyaratan tertentu ke beberapa tingkat.

2.      Apabila tabel yang diuji belum memenuhi persyaratan tertentu, maka tabel tersebut perlu dipecahmenjadi beberapa tabel yang lebih sederhana sampai memenuhi bentuk yang optimal.

Tahapan Normalisasi

Bentuk Tidak Normal Menghilangkan perulangan group Bentuk Normal Pertama (1NF) Menghilangkan ketergantungan sebagian Bentuk Normal Kedua (2NF) Menghilangkan ketergantungan transitif Bentuk Normal Ketiga (3NF) Menghilangkan anomali-anomali hasil dari ketergantungan fungsional Bentuk Normal Boyce-Codd (BCNF) Menghilangkan Ketergantungan Multivalue Bentuk Normal Keempat (4NF) Menghilangkan anomali-anomali yang tersisa Bentuk Normal Kelima

Ketergantungan Fungsional

Definisi : Atribut Y pada relasi R dikatakan tergantung fungsional pada atribut X (R.X —> R.Y), jika dan hanya jika setiap nilai X pada relasi R mempunyai tepat satu nilai Y pada R.

Misal, terdapat skema database Pemasok-barang : Pemasok (No-pem, Na-pem)

Tabel PEMASOK-BARANG

No-pem Na-pem

P01 Baharu P02 Sinar P03 Harapan

Ketergantungan fungsional dari tabel PEMASOK-BARANG adalah : No-pem —> Na-pem

Ketergantungan Fungsional Penuh Definisi : Atribut Y pada relasi R dikatakan tergantung fungsional penuh pada atribut X pada relasi R, jika Y tidak tergantung pada subset dari X ( bila X adalah key gabungan)

Contoh : KIRIM-BARANG( No-pem, Na-pem, No-bar, Jumlah)

No-pem Na-pem No-bar Jumlah

P01 Baharu B01 1000 P01 Baharu B02 1500 P01 Baharu B03 2000 P02 Sinar B03 1000 P03 Harapan B02 2000

Ketergantungan fungsional : No-pem –> Na-pem No-bar, No-pem –> Jumlah (Tergantung penuh thd keynya)

Ketergantungan Transitif Definisi : Atribut Z pada relasi R dikatakan tergantung transitif pada atribut X , jika atribut Y tergantung pada atribut X pada relasi R dan atribut Z tergantung pada atribut Y pada relasi R. ( X Y, Y Z , maka X Z )

Contoh :

No-pem Kode-kota Kota No-bar Jumlah P01 1 Jakarta B01 1000 P01 1 Jakarta B02 1500 P01 1 Jakarta B03 2000 P02 3 Bandung B03 1000 P03 2 Surabaya B02 2000

Ketergantungan fungsional : No-pem Kode-kota Kode-kota Kota , maka No-pem Kota

Bentuk Normal Kesatu (1NF) Suatu relasi dikatakan sudah memenuhi Bentuk Normal Kesatu bila setiap data bersifat atomik yaitu setiap irisan baris dan kolom hanya mempunyai satu nilai data

Tabel KIRIM-1 (Unnormal)

No-pem Kode-kota Kota No-bar Jumlah

P01 1 Jakarta B01 1000 B02 1500 B03 2000 P02 3 Bandung B03 1000 P03 2 Surabaya B02 2000

Tabel KIRIM-2 (1NF)

No-pem Kode-kota Kota No-bar Jumlah

P01 1 Jakarta B01 1000 P01 1 Jakarta B02 1500 P01 1 Jakarta B03 2000 P02 3 Bandung B03 1000 P03 2 Surabaya B02 2000 Diagram Ketergantungan Fungsional

Kode-kota No-pem Kota Jumlah

No-bar

Bentuk Normal Kedua (2NF) Suatu relasi dikatakan sudah memenuhi Bentuk Normal Kedua bila relasi tersebut sudah memenuhi bentuk Normal kesatu, dan atribut yang bukan key sudah tergantung penuh terhadap keynya.

Tabel PEMASOK-1 (2NF)

No-pem Kode-kota Kota

P01 1 Jakarta P02 3 Bandung P03 2 Surabaya

Bentuk Normal Ketiga (3NF) Suatu relasi dikatakan sudah memenuhi Bentuk Normal ketiga bila relasi tersebut sudah memenuhi bentuk Normal kedua dan atribut yang bukan key tidak tergantung transitif terhadap keynya.

Tabel KIRIM-3 (3NF)

No-pem No-bar Jumlah

P01 B01 1000 P01 B02 1500 P01 B03 2000 P02 B03 1000 P03 B02 2000

Tabel PEMASOK-2 (3NF) Tabel PEMASOK-3 (3NF)

No-pem Kode-kota Kode-kota Kota

P01 1 1 Jakarta P02 3 2 Surabaya P03 2 3 Bandung

Tugas 4 (921411073)

21 November 2012 23:05:41 Dibaca : 103

Entity Diagram Relationship

Jasa servis motor mandiri.

Studi kasus

Saat motor rusak, terasa tidak nyaman dan sebagainya, pemilik motor sebaiknya segera menserviskan motornya agar keselamatan berkendara lebih terjamin. Dalam hal ini membawa sepeda motor ke outlet resmi motor. Tiap pemilik yang menservis motor, ditempat yang resmi pertama kalnya harus mendaftarkan diri pada dilernya. Ada beberapa komponen dalam pendaftaran ini meliputi nama, alamat, no telpon, nomor anggota, dan lain-lain.

Tiap sepeda motor pastinya memiliki type/ merk, nomor plat motor, nomor mesin dan sebagainya.

Kegiatan pertama yang dilakukan mekanik adalah melakukan diagnosa terhadap motor, bagian mana saja yang harus diperbaiki. Setelah itu, mekanik memberitahukan tiap kerusakan kepada pemilik motor (customer) apakah akan ditune up seluruhnya. Setelah itu mekanik mulai memainkan jarinya pada motor, membersihkan bagian mesin, membenarkan rantai yang kendor, dan sebagainya termasuk ganti oli bila diperlukan. Selesai mentune up motor, mekanik mencoba kenyamanan motor dengan membawa motor  “jalan-jalan” sebentar. Dan jika sudah tidak ada masalah, mekanik melaporkan tune up apa saja yang dilakukan kepada kasir. Kasir menghitung total biaya yang harus dibayar customer. Terjadi transaksi pembayaran dan customer bisa membawa motornya kembali pulang ke rumah tercinta.

Entitas dan atribut jasa servis motor mandiri

1.      Costomer - Nama - Alamat - No. Anggota(primer key) - No.Tlp

2.      Motor - Merek - No. Plat (primer key) -No. Mesin

3.      Mekanik - Nama - No. Id (primer key)

4.      Kasir - Nama - No. Id (primer key)

Tabel Matriks

             

Grafik Entity Relationship

        

Tugas 3 (921411073)

04 October 2012 14:51:15 Dibaca : 74

contoh bahasa DDL , DQL , DCL , DML pada DBMS

1. DDL mendefinisikan struktur basis data, seperti pembuatan basis data, pembuatan tabel dsbnya. Contoh: CREATE DATABASE dan CREATE TABLE.

1. Data Definition Language ( DDL )
- Perintah SQL untuk definisi data:
· CREATE untuk membentuk basis data, table atau index
· ALTER untuk mengubah struktur table
· DROP untuk menghapus basis data, table atau index

 
Gambar 1. Contoh create database
 
 

Gambar 2. Contoh create tabel



Gambar 3. Contoh create tabel
 
2. DML merupakan bagian untuk memanipulasi basis data seperti: pengaksesan data, penghapusan, penambahan dan pengubahan data. DML juga dapat digunakan untuk melakukan komputasi data. Contoh: INSERT,DELETE, dan UPDATE.
Data Manipulation Languange ( DML )
- Bahasa untuk mengakses basis data
- Bahasa untuk mengolah basis data
- Bahasa untuk memanggil fungsi-fungsi agregasi
- Bahasa untuk melakukan query
- Jenis-jenis query:
· Sederhana
· Join
· Bertingkat ( Nested Query )

Contoh : Skema Model Relasi Antar Tabel Toko Kaset
Gambar 4. Contoh create query
 
Gambar 5. Contoh insert,delete pada office acces
 
3. DCL adalah perintah-perintah yang digunakan untuk membantu mengontrol keamanan setiap database atau sebagian isi dari database dengan membuat hak – hak akses tertentu bagi setiap user.
Perintah-perintah lain yang termasuk dalam data control language adalah :
a. Commit
Merupakan perintah yang digunakan untuk memindahkan transaksi dari memory pemrosesan ke database atau menyimpan secara permanen perubahan-perubahan kedalam database.
b. Rollback
Merupakan perintah yang digunakan untuk membatalkan transaksi yang belum di commit atau membatalkan perubahan-perubahan terakhir dari perintah commit/rollback terakhir.
 

Tugas 2 921411073

20 September 2012 08:51:27 Dibaca : 231

 Tipe-tipe dalam microsoft access, antara lain:

•Text, adalah tipe data yang berisikan huruf atau kombinasi huruf dan angka. Tipe data ini memiliki panjang 255 karakter.

•Memo, adalah tipe data yang berisikan huruf atau kombinasi huruf dan angka. Tipe data ini memiliki panjang 65535 karakter.

•Number, adalah tipe data yang berisikan angka untuk perhitungan matematis. Tipe data ini memiliki panjang 1, 2, 4, atau 8 byte (1 byte = 1 karakter = 8 bit binary).

•Date/Time, adalah tipe data yang berisikan tanggal bulan dan tahun. Tipe data ini memiliki panjang 8 byte.

•Currency, adalah tipe data yang berisikan angka yang melibatkan 1 sampai 4 angka di belakang koma (desimal). Tipe data ini mampu terlibat dalam perhitungan sampai 15 digit di depan koma, dan 4 digit di belakang koma. Panjangnya 8 byte.

•AutoNumber, adalah tipe data yang berisikan angka yang mengalami increment (penambahan dengan skala kelipatan yang tetap). Defaultnya adalah 1. Panjangnya 4 byte.

•Yes/No, adalah tipe data yang berisikan jawaban yes/no, true/false, atau on/off. Panjangnya hanya 1 bit (bukan byte).

•OLE Object, adalah tipe data yang berisikan bermacam-macam object, seperti file Ms Word, spreadheet milik Ms Excel, grafik, gambar, dan sebagainya. Ukurannya tak terbatas, tergantung dari kapasitas hardisk.

•Hyperlink, adalah tipe data yang berisikan link ke sebuah object atau situs web. Panjangnya 2048 karakter.

Tipe Data Pada MySQL

MySQL adalah pangkalan data RDBMS (Relational Database Management System) yang akan menyimpan data-data sistem yang dibangunkan. Terdapat banyak pangkalan data RDMS lain yang ada dipasaran seperti Oracle, Informix, Sybase, DBase, MS SQL, MS Access dan banyak lagi.Pangkalan data tersebut kesemuanya perlu dibeli dengan kos yang tinggi. Tetapi, MySQL tetap menjadi pilihan kerana ia adalah Sumber Terbuka (Open Source) yang boleh digunakan tanpa perlu membelinya.

1. Tipe Data Bilangan.

a. TINYINT :
Ukuran 1 byte. Bilangan bulat terkecil, dengan jangkauan untuk bilangan bertanda -128 sampai dengan 127 dan untuk yang tidak bertanda 0 sampai dengan 255. Bilangan tak bertanda ditandai dengan kata UNSIGNED.

b. SMALLINT :
Ukuran 2 byte. Bilangan bulat dengan jangkauan untuk bilangan bertanda -32768 sampai dengan 32767 dan untuk yang tidak bertanda 0 sampai dengan 65535.

c. MEDIUMINT :
Ukuran 3 byte. Bilangan bulat dengan jangkauan untuk bilangan bertanda -8388608 sampai dengan 8388607 dan untukyang tidak bertanda 0 sampai dengan 16777215.

d. INT :
Ukuran 4 byte. Bilangan bulat dengan jangkauan untuk bilangan bertanda -2147483648 sampai dengan 2147483647 dan untuk yang tidak bertanda 0 sampai dengan 4294967295

e. Integer :
Sama dengan INT.

f. BIGINT :
Ukuran 8 byte. Bilangan bulat dengan jangkauan untuk bilangan bertanda -9223372036854775808 sampai dengan 9223372036854775807 dan untuk yang tidak bertanda 0 sampai dengan 184467440737079551615

g. FLOAT :
Ukuran 4 byte. Biilangan pecahan.

h. DOUBLE :
Ukuran 8 byte. Bilangan pecahan.

i. DOUBLE PRECISION :
Ukuran 8 byte. Bilangan pecahan berpresisi ganda.

j. REAL :
Ukuran 8 byte. Sinonim dari DOUBLE.

k. DECIMAL(M,D) :
Ukuran M byte. Bilangan pecahan. Misalnya DECIMAL(5,2) dapat digunakan untuk menyimpan bilangan -99,99 sampai dengan 99,99

l. NUMERIC(M,D) :
Ukuran M byte. Sama dengan Decimal.

2. Tipe data untuk tanggal dan jam.

a. DATETIME :
Ukuran 8 byte. Kombinasi tanggal dan jam dengan jangkauan dari ‘1000-01-01 00:00:00’ sampai dengan ‘9999-12-31 23:59:59’

b. DATE :
Ukuran 8 byte. Kombinasi tanggal dan jam dengan jangkauan dari ‘1000-01-01’ sampai dengan ‘9999-12-31’

c. TIMESTAMP
Ukuran 4 byte. Kombinasi tanggal dan jam dengan jangkauan dari ‘1970-01-01’ sampai dengan ‘2037’

d. TIME :
Ukuran 3 byte.waktu dengan jangkauan dari -838:59:59 sampai dengan 838:59:59

3. Tipe data untuk karakter dan lain-lain

a. CHAR(M) :
Ukuran M byte, 1<=M<=255. Data string dengan panjang yang tetap. CHAR(1) cukup ditulis dengan CHAR.

b. VARCHAR(M) :
Ukuran L+1 byte dengan L<=M dan 1<=M<=255. Data string dengan panjang bervariasi tergantung datanya.

c. TINYBLOB,TINYTEXT :
L+1 byte, dengan L

d. BLOB, TEXT :
L+2 byte, dengan L

e. MEDIUMBLOB, MEDIUMTEXT :
L+3 byte, dengan L<224. Tipe TEXT atau BLOB dengan panjang maksimum 1677215 karakter.

f. LONGBLOB, LONGTEXT :
L+4 byte, dengan L<232. Tipe TEXT atau BLOB dengan panjang maksimum 4294967295 karakter.

g. ENUM(’nilai1’,’nilai2’,..) :
Ukuran 1 atau 2 byte tergantung nilai enumerasinya maks 65535 nilai

h. SET(’nilai1’,’nilai2’,..) :
Ukuran 1,2,3,4 atau 8 byte tergantung jumlah anggota himpunan maks 64 anggota.

Tipe data pada oracle 10g

1 . Varchar2(size) : string yang memiliki panjang karakter vaiable dengan panjang maxial sebesar size. Tipe data ini memperbolehkan penyimpanan semua karakter yang dapat dimasukkan melalui keyboad. Maksimum size yang dapat disimpan sebesar 4000 bytes (karakter). Tipe data ini juga memungkinkan untuk mneyimpan data numerik. Biasanya space akan langsung dieliminasi jika menggunakan tipe ini.

2. Char(size): string dengan panjan gkarakter tetap sebesar ukuran size. Tipe data ini mempunyai kemampuan yang hampir sama yakni menyimpan karakter, hanya saja maksimum size yang disimpan hanya sebesar 2000 bytes.

3. Number(p,s) : tipe data number memiliki presisi p dan s digit dibelakan koma jika kita abaikan p dan s berarti dianggap sebagai tipe number floating point. Tipe data ini menyimpan bilangan interger sampai maksimum dari digit integer tersebut. misal untuk spesifikasi (5,2) berarti 3 digit sebelum koma dan 2 digit dibelakang koma.

4 . Long : data karakter dengan ukuran panjang bervariasi, hingga mencapai 2 GB.(tipe data seperti ini tidak dapat digunakan sebagai primary key).

5. Raw(size) : tipe data berupa binary data dengan ukuran maksimal 255 bytes

6. Long Raw : Tipe data berupa binary data dengan ukuran maksimal 2 GigaBytes tidak dikonversi oleh oracle (data mentah apa adanya, spasi dihitung 1 karakter).

7. Date : Tipe data ini menyimpan waktu dan tanggal dari sebuah informasi, dengan komponen waktu yang dibulatkan ke detik terdekat. Untuk menampilkannya dalam teks harus menggunakan fungsi to_char.

8. Timestamp : tipe ini mirip dengan date. Di dalam tipe ini terdapat komponen waktu yang dapat langsung ditampilkan tanpa harus mengubahnya terlebih dahulu dengan fungsi to_char.

9. Clob : Tipe data ini memperbolehkan penyimpanan objek dengan ukuran yang sangat besar sekitar 4 GB. Clob mirip sekali dengan varchar2 hanya saja tipe data ini mempunyai kapasitas maksimum yang lebih besar.

10. Blob : tipe ini memperbolehkan penyimpanan objek bbinary yang besar dan tidak terstruktur. Contoh dari tipe data blob adalah suara dan video.