Tugas 6

10 December 2012 13:07:25 Dibaca : 119

RELASI TABEL DALAM MYSQL

1.      INNER JOIN

Inner join berfungsi sebagai pemetaan relasi one-to-one (satu ke satu), yaitu dimana hanya satu record tabel A yang sama dengan satu record tabel B, dan hanya satu record tabel B yang sama dengan satu record tabel A.

            Syntax untuk merelasikan tabel pada inner join yaitu :

a.    Select *  

b.    FROM table1  

c.    INNER JOIN table2   

d.   ON table1.column_name = table2.column_name;

           

Syntax untuk merelasikan

a.       SELECT minuman.nama_minuman, minuman.unit, perusahaan.nama_perusahaan, perusahaan.lokasi_perusahaan

b.      FROM minuman

c.       INNER JOIN perusahaan

d.      ON minuman.id_perusahaan =perusahaan.id_perusahaan

 

2.      LEFT JOIN

Left join berfungsi sebagai pemetaan relasi many-to-one (banyak ke satu), yaitu dimana beberapa record tabel A yang sama dengan satu record tabel B.

Penggunaan relasi LEFT JOIN adalah untuk menampilkan kedua table yang direlasikan dengan menampilkan semua record meskipun tidak bersesuaian dengan table yang lain dengan jumlah record tergantung jumlah record sebelah KIRI. Sedangkan syntak ON berfungsi menampilkan kedua table lengkap dengan semua fieldnya tanpa menyingkat tampilan field yang direlasikan dengan menampilkan satu kali (field yang berelasi ditampilkan dua kali yaitu saat di deret table pertama lalu di deret table kedua.

 

Syntax untuk merelasikan tabel pada left join yaitu :

a.       SELECT column_name(s)

b.      FROM table_name1

c.       LEFT JOIN table_name2

d.      ON table_name1.column_name=table_name2.column_name

 

Contoh merelasikan tabel pada inner join yaitu :

Tabel 1 “Pelanggan”        

                  SELECT Pelanggan.Last_Name, Pelanggan.First_Name, pesanan.nama_pesanan

a.       FROM Pelanggan

b.      LEFT JOIN Pesanan

c.       ON Pelanggan.Id_pelanggan=pesanan.Id_pelanggan

d.      Pesanan BY Pelanggan.Last_Name

3.   

   RIGTH JOIN

Right join berfungsi sebagai pemetaan relasi one-to-many (satu ke banyak), yaitu dimana hanya satu record tabel A yang sama dengan beberapa record tabel B.

Penggunaan relasi RIGHT JOIN adalah untuk menampilkan kedua table yang direlasikan dengan menampilkan semua record meskipun tidak bersesuaian dengan table yang lain dengan jumlah record tergantung jumlah record sebelah KANAN dan table kedua (dituliskan setelah join) ditampilkan lebih dulu setelah field yang direlasikan. Sedangkan syntak ON berfungsi menampilkan kedua table lengkap dengan semua fieldnya tanpa menyingkat tampilan field yang direlasikan dengan menampilkan satu kali (field yang berelasi ditampilkan dua kali yaitu saat di deret table pertama lalu di deret table kedua).

Syntax untuk merelasikan tabel pada right join yaitu :

a.       SELECT column_name(s)

b.      FROM table_name1

c.       RIGHT JOIN table_name2

d.      ON table_name1.column_name=table_name2.column_name

 

Contoh merelasikan tabel pada inner join yaitu :

 a.       SELECT Pelanggan.Last_Name, Pelanggan.First_Name, Pesanan.Nama_pesanan

b.      FROM Pelanggan

c.       RIGHT JOIN Pesanan

d.      ON Pelanggan.Id_Pelanggan=Pesanan.Id_Pelanggan

e.       Pesanan BY Pelanggan.Last_Name

 

http://echo-corner.blogspot.com/2011/08/mengakses-data-pada-beberapa-tabel_01.html

Tugas 5

09 December 2012 16:11:12 Dibaca : 222

NORMALISASI DATABASE

Normalisasi merupakan kondisi dimana relasi antar tabel telah terbentuk dengan baik sesuai kaidah dalam sebuah database bertujuan untuk menciptakan struktur-struktur entity yang dapat mengurangi redundansi data dan meningkatkan stabilitas database. Ada dua fungsi normalisasi, yaitu :

1. Dapat digunakan sebagai metodologi dalam menciptakan desain database dengan menghasilkan rancangan tabel-tabel yang nantinya sesuai dengan masalah dan kebutuhan yang dihadapi. 2. Dapat digunakan sebagai verifikasi terhadap hasil desain database yang telah dibuat, baik menggunakan E-R Model atau menggunakan model relasi.

Normalisasi yang umum digunakan sampai tahap Third Normal Form (3 NF) atau lebih sesuai keadaan waktu nyata yang nantinya langsung dapat diimplementasikan kedalam database. Normalisasi diperlukan agar dapat Menghasilkan himpunan skema relasi antar tabel yang mengizinkan pengguna untuk menyimpan informasi tanpa adanya redudansi data serta mengizinkan pengguna untuk mencari informasi yang dikehendaki dengan cepat dan mudah.

A.Tahap - Tahap Normalisasi :

Tingkatan proses normalisasi dengan Third Normal Form (3NF):

  1. Bentuk Tahap UnNormalized
  2. Bentuk Normal Pertama (1NF)
  3. Bentuk Normal Kedua (2NF)
  4. Bentuk Normal Ketiga (3NF)

Tingkatan proses normalisasi dengan Five Normal Form (5NF):

  1. Bentuk Normal Pertama (1NF)
  2. Bentuk Normal Kedua (2NF)
  3. Bentuk Normal Ketiga (3NF)
  4. Bentuk Normal Boyce-Codd (BCNF)
  5. Bentuk Normal Keempat (4NF)
  6. Bentuk Normal Kelima (5NF)

1.              Bentuk Normal Pertama (1NF)

Bentuk normal pertama dikenakan pada entity yang belum normal (Unnormalized Form). Bentuk tidak normal merupakan kumpulan data yang akan di rekam, tidak ada keharusan mengikuti suatu format tertentu, dapat saja tersebut tidak lengkap atau terduplikasi. Data dikumpulkan apa adanya sesuai dengan kedatangannya.

Ada dua kelemahan utama pada bentuk tidak normal diatas :

1. Terdapat attribut yang berulang (duplikat), yaitu attribut matakulia. Mahasiswa dengan nama Elzar mengambil 2 matakuliah, sementara Si Fikri mengambil 3 matakuliah dimana matakuliah yang mereka ambil ada yang sama.

2. Terdapat informasi yang meragukan, dimana ada dua baris memiliki matakuliah yang sama, tapi berbeda nilainya. Sebenernya kedua baris tersebut menunjukkan dua orang yang sama namanya tapi berbeda nilai.

Bentuk entity diatas harus di rubah menjadi bentuk normal pertama.Aturan Bentuk Normal Pertama (1NF) :

Suatu entity dikatakan dalam bentuk normal pertama jika setiap attributnya bernilai tunggal untuk setip barisnya.

 

2.Bentuk Normal Kedua (2NF)

Aturan Bentuk Normal Kedua (2NF) : Suatu entity dikatakan dalam bentuk normal pertama jika : 1. Berada pada bentuk normal pertama. 2. Semua attribut bukan kunci memiliki ketergantungan fungsional (Depedensi Fungsional) dengan kunci utama (primary key)

Ketergantungan fungsional adalah suatu attribut X mempunyai ketergantungan fungsional terhadap attribut Y apabila setiap nilai X berhubungan dengan sebuah nilai Y. Misalnya Attribut Nama pada entity Mahasiswa, mempunyai ketergantungan fungsional terhadap attribut NoBP, karena setiap nama mahasiswa harus mempunyai NoBP.

Pada tahap ini anda harus memilah-memilah dan membagi entity tersebut menjadi beberapa entity lainnya yang mempunyai kunci utama. Sehingga masingmasing attribut yang bukan kunci mempunyai ketergantungan fungsional dengan kunci utama tersebut.

 

3.Bentuk Normal Ketiga(3NF)

Aturan Bentuk Normal Ketiga (3NF) : Suatu entity dikatakan dalam bentuk normal pertama jika : 1. Berada pada bentuk normal kedua. 2. Semua attribut bukan kunci tidak memiliki ketergantungan transitif (Depedensi transitif) dengan kunci utama (primary key). Ketergantungan Transitif terjadi pada entity yang menggunakan attribut gabungan sebagai kunci utama. Seperti pada entity nilai pada bentuk normal kedua diatas, yang menjadi kunci utama adalah NoBP dan Kode Matakuliah. Ketergantungan transitif terjadi bila :

a. Attribut X memiliki ketergantungan fungsional dengan attribut Y. b. Attribut Z memiliki ketergantungan fungsional dengan attribut X.

Misalnya attribut Kode Matakuliah pada entiti nilai diatas, mempunyai ketergantungan fungsional dengan attribut NoBP, Attribut Nama Matakuliah mempunyai ketergantungan fungsional dengan attribut Kode Matakuliah.4.Bentuk Normal Boyce-Codd (BCNF). Aturan Bentuk Normal Boyce-Codd (BCNF) : Suatu entity dikatakan dalam bentuk BCNF jika : Semua kunci utama adalah kunci kandidat yang bersifat unik

 

4.Bentuk Normal Keempat (4NF)

Bentuk normal keempat berhubungan dengan sifat ketergantungan banyak nilai (Multivalued Dependency) pada suatu tabel yang merupakan pengembangan dari ketergantungan fungsional.

 

5.Bentuk Normal Kelima (5NF)

Bentuk normal kelima berkenaan dengan ketergantungan relasi antar tabel (Join Depedency).

Melakukan normalisasi data dilakukan berdasarkan analisa dan kebutuhan, implementasi kedalam database tidak hanya dilakukan 3 tahap saja untuk mendapatkan nilai normalisasi tapi tergantung permasalahan yang dihadapi dari relasi umum yang terjadi.Ketika kita sudah terjun ke lapangan (dunia kerja), ada kalannya terjadi ketidaksesuaian antara hasil analisa/perencanaan dengan hasil implementasi. Yang terpenting adalah “aplikasi sesuai dengan keinginan pengguna” dengan tidak peduli akan proses yang ada > atau dengan kata lain kita gunakan “Management By Objective”.

 

B.     Tujuan Normalisasi Database

-          Untuk menghilang kerangkapan data

-          Untuk mengurangi kompleksitas

-          Untuk mempermudah pemodifikasian data

C.     Proses Normalisasi

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

-          Apabila tabel yang diuji belum memenuhi persyaratan tertentu, maka tabel tersebut perlu dipecah menjadi beberapa tabel yang lebih sederhana sampai memenuhi bentuk yang optimal.

 

DAFTAR PUSTAKA

file:///E:/new/Normalisasi%20Database%20%C2%AB%20apipfudin.htm

 

file:///E:/new/Normalisasi%20Database%20%C2%AB%20madridista.htm

 

 

 

Tugas 4

09 December 2012 14:18:54 Dibaca : 83
[Tanpa Konten]

Tugas 3

08 October 2012 11:11:27 Dibaca : 93

Bahasa DDL, DQL, DCL, DML Dalam DBMS

1. DDL (Data Definition Language)

        Yaitu bahasa yang memiliki kemampuan untuk mendefinisikan data yang berhubungan dengan pembuatan dan penghapusan objek seperti tabel, indeks, bahkan basis datanya sendiri. Misalnya, CREATE, DROP, dan ALTER. 

      DDL Struktur/skema basis data yang menggambarkan/mewakili desain basis data secara keseluruhan didefinisikan dengan bahasa khusus yang disebut DDL. Dengan bahasa inilah kita dapat membuat tabel baru, membuat indeks, mengubah tabel, menentukan struktur penyimpanan tabel dan sebagainya. Hasil dari kompilasi perintah DDL adalah kumpulan tabel yang disimpan dalam file khusus yang disebut Kamus Data.

 

2. DML (Data Manipulation Language)

     Yaitu bahasa yang berhubungan dengan proses manipulasi data pada tabel, record. Misalnya, INSERT, UPDATE, SELECT, dan DELETE. 

 

    DML Merupakan bentuk bahasa basis data yang berguna untuk melakukan manipulasi dan pengambilan data pada suatu basis data. Manipulasi data dapat berupa:  a. Penyisipan/Penambahan data baru ke suatu basis data  b. Penghapusan data dari suatu basis data  c. Pengubahan data dari satu basis data.

 

 3. DCL (Data Control Language)

Data Control Language (DCL) merupakan sub bahasa SQL yang digunakan untuk melakukan pengontrolan data dan server databasenya. Perintah DCL, di antaranya:

-GRAND : Perintah ini digunakan untuk memberikan hak/ijin akses oleh administrator (pemilik utama) server kepada user (pengguna biasa). Hak akses tersebut berupa hak membuat (CREATE), mengambil (SELECT), menghapus (DELETE), mengubah (UPDATE), dan hak khusus berkenaan dengan sistem databasenya.

-REVOKE : Perintah ini memiliki kegunaan terbalik dengan GRAND, yaitu untuk menghilangkan atau mencabut hak akses yang telah diberikan kepada user oleh administrator.

Tugas 2

04 October 2012 08:18:19 Dibaca : 130

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.

 
 

Type Data Pada Oracle

 

 

 

 

 

 

 

 

 

 Oracle Database menyediakan sejumlah built-in tipe data serta beberapa kategori untuk jenis yang ditentukan oleh pengguna, yang dapat digunakan sebagai tipe data. Penjelasan dari tipe data Oracle tiap-tiap tipe data akan dijelaskan pada bagian berikut:

Tipe Data Karakter Tipe data karakter terdiri atas tipe-tipe data CHAR, NCHAR, NVARCHAR2, VARCHAR2, VARCHAR, LONG, RAW dan LONG RAW. Penjelasan dari masing-masing tipe data dijelaskan sebagai berikut :

CHAR Tipe data CHAR dispesifikasikan dalam karakter string yang memiliki panjang tetap. Oracle memastikan bahwa semua nilai disimpan dalam sebuah kolom CHAR memiliki panjang yang ditentukan oleh ukuran (size). Jika Anda memasukkan nilai yang lebih pendek dari panjang kolom, Oracle akan mengisikan nilai kosong untuk panjang kolom yang tidak terisi nilai. Jika Anda mencoba untuk memasukkan nilai yang terlalu panjang untuk kolom, Oracle akan menampilkan pesan error.

NCHAR Tipe data NCHAR adalah tipe data Unicode-only. Bila Anda membuat sebuah tabel dengan kolom NCHAR, Anda akan diminta menentukan panjang kolom dalam karakter. Anda mendefinisikan karakter nasional saat Anda membuat (create) database Anda.

NVARCHAR2 Tipe data NVARCHAR2 adalah tipe data Unicode-only. Bila Anda membuat sebuah tabel dengan kolom NVARCHAR2, anda akan diminta menyertakan jumlah maksimal karakter yang dapat diisikan kedalamnya. Oracle kemudian menyimpan setiap nilai dalam kolom persis seperti yang Anda tentukan itu, asalkan nilai tidak melebihi panjang maksimum kolom.

VARCHAR2 Tipe data VARCHAR2 menetapkan string karakter variabel-panjang. Ketika Anda membuat kolom VARCHAR2, anda akan diminta menyertakan jumlah maksimal byte atau karakter data yang dapat diisikan kedalamnya. Oracle kemudian menyimpan setiap nilai dalam kolom persis seperti yang Anda tentukan itu, asalkan nilai tidak melebihi panjang maksimum kolom tentang kolom. Jika Anda mencoba untuk memasukkan nilai yang melebihi panjang yang ditentukan, maka Oracle akan menampilkan pesan error.

VARCHAR Jangan menggunakan tipe data VARCHAR. Gunakan VARCHAR2 sebagai gantinya. Meskipun tipe data VARCHAR saat ini identik dengan VARCHAR2, tipe data VARCHAR dijadwalkan akan didefinisikan ulang sebagai tipe data terpisah yang digunakan untuk string karakter variabel-panjang dibandingkan dengan perbandingan semantik yang berbeda.

LONG Jangan membuat tabel dengan menggunakan kolom LONG. Gunakan kolom LOB (CLOB, NCLOB, BLOB) sebagai gantinya. kolom LONG didukung hanya untuk kompatibilitas. kolom LONG menyimpan string karakter yang mengandung variabel-panjang sampai dengan 2 gigabyte -1 atau 231-1 byte. Kolom LONG memiliki banyak karakteristik kolom VARCHAR2. Anda dapat menggunakan kolom LONG untuk menyimpan string teks panjang. Panjang nilai LONG mungkin dibatasi oleh memori yang tersedia pada komputer Anda.

RAW dan LONG RAW Tipe data RAW dan LONG RAW menyimpan data yang tidak secara eksplisit dikonversi oleh Oracle Database ketika memindahkan data antara sistem yang berbeda. Tipe data ini dimaksudkan untuk data biner atau string byte. Sebagai contoh, Anda dapat menggunakan LONG RAW untuk menyimpan grafik, sound, dokumen, atau array data biner, yang penafsirannya tergantung pada penggunaan masing-masing.

 

Data Type di dalam Table Microsoft Access

 

 

1.   Text, yaitu data yang bisa diisi dengan nilai kombinasi antara text dan number, dengan maximum karakter sebanyak 255 karakter.

2. Memo, sama saja dengan jenis Text, hanya saja memiliki jumlahkarakter maksimum yang lebih banyak, yaitu 63,999 karakter.

3.  Number, yaitu data dengan jenis number (angka) yang digunakan untuk kalkulasi matematika dan keperluan lainnya. Umumnya number ini terdiri dari 1, 2, 4 dan 8 bytes data. Khusus untuk number jenis Replication ID mempunyai 16 bytes data. Silahkan pelajari table berikut ini untuk lebih jelasnya: 

4.     Date/Time, yaitu data dengan jenis tanggal, waktu atau penggabungan dari tanggal dan waktu.

 5.  Currency, yaitu data dengan jenis number, hanya saja pada awal angka selalu disertakan symbol currency default sesuai dengan regional setting yang digunakan, misalnya Rp, $, dll. Currency dapat menggunakan angka dengan 15 digit dibelakang desimal dan 4 digit sesudah desimal.

 6.    AutoNumber, yaitu data yang tidak dapat kita isi secara manual melainkan ia terisi secara otomatis oleh Access, baik secara menjumlah ataupun random (acak).

 7.  Yes/No, yaitu data dengan jenis hanya 2 pillihan yaitu Yes (-1 atau True) atau No (0 atau False). Format yang tersedia adalah : Yes/No, True/False, dan On/Off.

 8. OLE Object, yaitu data yang diambil dari system OLE seperti Microsoft Excel spreadsheet,  Microsoft Word document, graphics, sounds, atau data-data biner lainnya baik yang dilink ataupun dimasukkan secara permanen (embedded) kedalam table Microsoft Access.

 9. Hyperlink, yaitu type data yang digunakan untuk menyimpan alamat internet atau file yang  ditunjukkan melalui alamat URL.

 10.Attachment, yaitu data type yang digunakan untuk menyimpan attachment file yang berformat apa saja (bebas, bisa file gambar, file suara, dll).

  Selain 10 data type diatas, ada dua fasilitas tambahan khusus untuk field di dalam Microsoft Access, yakni:

  • Calculated, yaitu fasilitas yang berguna untuk menghitung operasi matematika antara field yang satu dengan field yang lainnya. Misalnya, kita bisa menjumlahkan field A dengan field B, dll.
  • Lookup Wizards, yaitu fasilitas combo box (list) yang dibuat secara wizard sehingga kita dapat memilih (lookup) suatu data dari daftar pada table lainnya.