Tugas 6 Manajemen Database

05 December 2012 23:15:28 Dibaca : 216

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.

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.

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

Tugas 5 Manajemen Database

07 November 2012 14:54:00 Dibaca : 251

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 Manajemen Database

07 November 2012 13:40:20 Dibaca : 209

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 Manajemen Database

04 October 2012 09:37:18 Dibaca : 429

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

Gambar 1. Contoh create database

 

Gambar 2. Contoh create tabel

 

Gambar 3. Contoh create tabel

 

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

Contoh : Skema Model Relasi Antar Tabel Toko Kaset

Gambar 1. Contoh create query

 

Gambar 2. Contoh insert,delete pada office acces

 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 manajemen database

20 September 2012 03:31:58 Dibaca : 234

Type Data dalam Table Microsoft Access 2010

 

·        Field Name adalah untuk nama kolom dalam tabel yang akan kita buat misalkan Nomor urut, nama, tanggal, alamat, jumlah dan lain sebagainya.

·        Data type adalah jenis data yang disesuaikan fungsinya yang diberinama di Field name tersebut misalkan jika di Field Name kita beri judul Nomor Urut maka Type Datanya bisa dengan memilih Nomor yang muncul Secara Otomatis (maka pilih AutoNumber) atau manual dalam mengisinya (pilih Number).

·        Description adalah sebagai penjelasan terhadap kolom yang dibuat tadi.

 

Mengenal dan memahami Data type itu penting agar tidak salah dalam pembuatan tabel nantinya. Adapun Type Data yang disediakan di ms. Acces 2007 adalah sebagai berikut :

1.  Text adalah type data berupa teks atau huruf, angka, spasi dan tanda baca lainnya yang mampu menampung karakter dari huruf dan angka tersebut sebanyak 255 karakter.

2.   Memo adalah type data yang hampir sama dengan Text tetapi karakter yang mampu ditampungnya sangat besar yaitu sampai dengan 65535 karakter.  Memo, adalah tipe data yang berisikan huruf atau kombinasi huruf dan angka.

3.   Number adalah type data yang diperuntukan untuk angka saja.

4.  Date/Time adalah type data yang diperuntukan untuk menampilkan tanggal dan waktu.

5.   Currency adalah type data yang hampir sama dengan number tapi diperuntukan untuk format mata uang.

6.   Yes/No adalah type data untuk sebuah logika Ya atau Tidak.

7.  OLE Object adalah type data yang dipergunakan untuk menampung gambar atau obyek dengan ukuran tidak lebih dari 128 MB.

8. Hyperlink adalah type data untuk menmapilkan alamat hyperlink dengan batas maksimum penampungannya adalah 2048 karakter

9.  AutoNumber seperti yang telah dijelaskan diatas, adalah nilai angka atau variasi angka huruf (yang akan berubah hanya angka apabila formatnya perpaduan huruf dan angka) yang akan muncul Secara Otomatis ketika kita menginput data baru dan angka tersebut tidak bisa kita edit.

10. Lookup Wizard adalah type data untuk menampilkan data dari tabel atau record lainnya atau dengan akta lain data yang diulang.

11.Attachment adalah type data yang digunakan untuk menampung / menyimpan / menampilkan lampiran persis seperti dalam sebuah email dan semua type data bisa ditampung disini.

 

 

 

Tipe-Tipe Data Pada MySQL

        Seperti yang kita ketahui saat membuat field pada tabel di sebuah database, kita akan di minta untuk menentukan tipe data apa yang akan di gunakan sesuai dengan data yang akan di simpan pada database, berikut keterangan daripada tipe-tipe data di MySQL.

No

Type

Keterangan

Panjang Karakter

1.

TINYINT

Berarti integer dengan range yang sangat kecil yaitu –2 sampai 2 , -1 atau 0 sampai 2. -1 jika UNSIGNED. Atribut yang dibolehkan adalah AUTO_INCREMENT, UNSIGNED, dan ZEROFILL. Harga default adalah NULL jika bisa atau 0 jika NOT NULL dengan peyimpanan 1 byte.

0 hingga 255

2.

SMALLINT

Berarti integer dengan range yang kecil yaitu –2 sampai 2, -1 atau 0 sampai 2. -1 jika UNSIGNED. Atribut yang dibolehkan adalah AUTO_INCREMENT, UNSIGNED, dan ZEROFILL. Harga default adalah NULL jika bisa atau 0 jika NOT NULL dengan peyimpanan 2 byte.

0 hinga 65535

3.

MEDIUMINT

Berarti integer dengan range yang sangat kecil yaitu –2 sampai 2, -1 atau 0 sampai 2. -1 jika UNSIGNED. Atribut yang dibolehkan adalah AUTO_INCREMENT, UNSIGNED, dan ZEROFILL. Harga default adalah NULL jika bisa atau 0 jika NOT NULL dengan peyimpanan 3 byte.

0 hingga 16777215

4.

INT

Berarti integer dengan range yang normal yaitu –2 sampai 2, -1 atau 0 sampai 2. -1 jika UNSIGNED. Atribut yang dibolehkan adalah AUTO_INCREMENT, UNSIGNED, dan ZEROFILL. Harga default adalah NULL jika bisa atau 0 jika NOT NULL dengan peyimpanan 4 byte.

0 hingga 4294967295.

5.

BIGINT

Berarti integer dengan range yang sangat kecil yaitu –2 sampai 2, -1 atau 0 sampai 2. -1 jika UNSIGNED. Atribut yang dibolehkan adalah AUTO_INCREMENT, UNSIGNED, dan ZEROFILL. Harga default adalah NULL jika bisa atau 0 jika NOT NULL dengan peyimpanan 8 byte.

0 hingga 18446744073709551615

6.

FLOAT

Berarti floating-point dengan range kecil yaitu antara +1.175494351E-38 sampai +3.402823466E+38 serta dengan single presisi. Atribut yang dibolehkan adalah ZEROFILL. Harga default NULL jika bisa atau 0 jika NOT NULL. Tempat penyimpanan 4 byte.

25 dan 53

7.

DOUBLE

Berarti floating-point dengan range besar yaitu antara +2.22507385072014E-308 sampai +1.7976931348623157E308 serta dengan double presisi. Atribut yang dibolehkan adalah ZEROFILL. Harga default NULL jika bisa atau 0 jika NOT NULL. Tempat penyimpanan 8 byte.

0, dan 2.2250738585072014E-308 hingga 1.7976931348623157E+308 untuk nilai positif

8.

DECIMAL

Berarti floating-point yang tersimpan sebagai string (1 byte untuk setiap digit, tanda desimal, atau tanda ’-‘). Range harga sama seperti .DOUBLE. Atribut yang dibolehkan adalah ZEROFILL. Tempat penyimpanan sebesar 9Mbyte. Jika D diisi 0 berarti tidak punya nilai desimal.

99,99

9.

CHAR(M)

Karakter dengan panjang 0 sampai Mbyte. Atribut yang dibolehkan adalah BINARY. Harga default adalah NULL jika bisa atau “ “ jika NOT NULL. Tempat pemyimpanan Mbyte

1 hingga 255

10.

VARCHAR

Variabel karakter dengan panjang 0 sampai Mbyte. Atribut yang dibolehkan adalah BINARY. Harga default adalah NULL jika bisa atau “ “ jika NOT NULL. Tempat pemyimpanan M+1 byte.

1 hingga 255

11.

TINYTEXT

Teks berukuran kecil dengan panjang 0 sampai 2. -1 byte. Harga default adalah NULL jika bisa atau “ “ jika NOT NULL. Tempat penyimpanan sebanyak panjang harga plus 1 byte

255

12.

TEXT

Teks yang normal dengan panjang 0 sampai 2. -1 byte. Harga default adalah NULL jika bisa atau “ “ jika NOT NULL. Tempat penyimpanan sebanyak panjang harga plus 2 byte.

65535

13.

MEDIUMTEXT

Teks berukuran sedang dengan panjang 0 sampai 2. -1 byte. Harga default adalah NULL jika bisa atau “ “ jika NOT NULL. Tempat penyimpanan sebanyak panjang harga plus 3 byte.

16777215

14.

LONGTEXT

Teks berukuran besar dengan panjang 0 sampai 2. -1 byte. Harga default adalah NULL jika bisa atau “ “ jika NOT NULL. Tempat penyimpanan sebanyak panjang harga plus 4 byte.

429496729

15.

ENUM

Berarti kolom hanya boleh diisi dengan salah satu dari harga yang ada. Harga default adalah NULL jika bisa atau harga1 jika NOT NULL. Tempat penyimpanan adalah 1 byte untuk enumerasi dengan anggota 1 sampai 255 dan 2 byte untuk enumerasi dengan anggota 256 sampai 65535.

65535

16.

SET

Berarti kolom boleh dikosongi atau diisi dengan beberapa harga dari daftar harga yang ada. Harga default adalah NULL jika bisa atau â€Â “ jika NOT NULL. Tempat penyimpanan adalah 1 byte untuk set dengan anggota 1 sampai 8, 2 byte untuk set dengan anggota 9 sampai 16, 3 byte untuk set dengan anggota 17 sampai 24, 4 byte untuk set dengan anggota 25 sampai 32, atau 8 byte untuk set dengan anggota 33 sampai 64.

64

17.

DATE

Untuk kolom tanggal dengan format YYYY-MM-DD dan range antara “1000- 01-01â€Â sampai “9999-12-31â€Â. Harga default adalah NULL jika bisa atau “0000- 00-00â€Â jika NOT NULL. Tempat penyimpanan 3 byte.

1000-01-01 hingga 9999-12-31

18.

TIME

Untuk kolom jam dengan format hh:mm: ss atau -hh:mm: ss untuk harga negatif. Range harga antara “-838:59:59â€Â sampai “838:59:59â€Â. Harga default adalah NULL jika bisa atau “00:00:00â€Â jika NOT NULL. Tempat penyimpanan 3 byte.

1970-01-01 00:00:0

19.

DATETIME

Gabungan antar hari dan jam dengan format YYYY-MM-DD hh:mm: ss dan range antar “1000-01-01 00:00:00â€Â sampai “9999-12-31 23:59:59â€Â. Harga default adalah NULL jika bisa atau “0000-00-00 00:00:00â€Â jika NOT NULL. Tempat penyimpanan 8 byte.

1000-01-01 00:00:00 hingga 9999-12-31 23:59:59

20.

TIMESTAMP

Hampir sama dengan DATETIME tapi dengan format YYYYMMDD hhmmss dan range antara 19700101000000 sampai suatu saat di tahun 2037. Harga default adalah hari dan jam saat itu. Tempat penyimpanan 4 byte.

1970-01-01 00:00:00

21.

YEAR

Untuk kolom tahun denga format YYYY dan range antara 1900 sampai 2155. Harga default adalah NULL jika bisa atau 0000 jika NOT NULL. Tempat penyimpanan 3 byte.

1901 hingga 2155, 0000

22.

Data kosong (NULL)

NULL berarti kosong atau tidak diisi data atau bisa juga berarti data yang tidak jelas, data yang hilang ataupun yang lainnya

 

23.

NUMERIC

MySQL dapat menerima masukan berupa angka-angka yang dibagi atas integer (angka tanpa pecahan) dan floating-point (angka dengan pecahan). MySQL juga mengerti notasi scientific yaitu integer atau floating-point yang diikuti tanda ‘e’ atau ‘E’, tanda ‘+’ atau ‘-‘. Misalnya angka 1.34E+12 atau 3.23e-5. Tipe ini untuk harga integer dan floating-point. Untuk integer kolom haruslah PRIMARY KEY atau indeks yang unik jika ia diberi atribut AUTO_INCREMENT (dapat otomatis mengurutkan angka). Jika diberikan atribut UNSIGNED berarti angka tidak boleh negatif. Sedangkan atribut ZEROFILL menandakan bahwa angka diawali dengan angka nol.

99,99

24.

TYNYBLOB

Sebuah BLOB (semacam catatan) atau TEXT dengan lebar maksimum 255 (2^8 – 1) karakter.

255

25.

BLOB

Sebuah BLOB atau TEXT dengan lebar maksimum 65535 (2^16 – 1) karakter.

65535

26.

MEDIUMBLOB

Sebuah BLOB atau TEXT dengan lebar maksimum 16777215 (2^24 – 1) karakter.

16777215

27.

LONGBLOB

Sebuah BLOB atau TEXT dengan lebar maksimum 4294967295 (2^32 – 1) karakter.

4294967295