Anda di halaman 1dari 42

Kegiatan Belajar 2: Pemrograman Basis Data

A. Capaian Pembelajaran Mata Kegiatan


Peserta dapat memahami pemrograman Basis Data

B. Sub Capaian Pembelajaran Mata Kegiatan


1. Menjelaskan struktur hirarki basis data
2. Membuat normalisasi basis data
3. Menjalankan kelompok perintah DDL, DML dan DCL dalam basis data
4. Menjelaskan tipe data pada basis data
5. Menggunakan bahasa SQL Dasar untuk mengelola tabel dalam basis
data
6. Membuat Form dalam database Access

C. Pokok-pokok materi
1. Struktur Hierarki basisdata
2. Normalisasi basisdata
3. Kelompok perintah DDL, DML, dan DCL
4. Tipe data dalam basisdata
5. Bahasa SQL dasar untuk mengelola tabel dalam baasisdata
6. Pembuatan Form

D. Uraian Materi

1. Struktur Hierarki Basis Data


Definisi Struktur atau arsitektur Basis Data, Arsitektur basis data merupakan
serangkaian pengetahuan tentang pemodelan data. Pengetahuan tentang File,
table, field, record indeks, abstraksi data dan serangkaian konsep yang
digunakan untuk membuat diskripsi struktur basis data. Melalui diskripsi Struktur
basis data dapat ditentukan jenis data, hubungan dan konstrain (keterbatasan)
data yang ditangani. Dalam basis data, data diorganisasikan kedalam bentuk
elemen data (field), rekaman (record), dan berkas (file). Definisi dari ketiganya
adalah sebagai berikut:
 Elemen (kolom atau field) data adalah satuan data terkecil yang tidak
dapat dipecah lagi menjadi unit lain yang bermakna. Misalnya data siswa
terdiri dari NIS, Nama, Alamat, Telepon atau Jenis Kelamin.

1
2

 Rekaman (record) merupakan gabungan sejumlah elemen data yang


saling terkait. Istilah lain dari record adalah baris atau tupel.
 Berkas (file) adalah himpunan seluruh record yang bertipe sama
Struktur hirarki sebuah database dapat digambarkan dalam diagram hirarki
begai berikut :

Gambar 2. 1. Struktur hirarki sistem basis data

Gambar 2. 2. Struktur penyimpanan file dan tabel dalam basis data

a. Skema Atau Abstraksi Basis Data


Abstraksi data adalah merupakan tingkatan atau level bagaimana melihat data
dalam sistem basis data. Abstraksi data diwujudkan dalam pemodelan data yang
3

merupakan sejumlah konsep yang digunakan untuk membuat diskripsi struktur


basis data.Melalui diskripsi struktur basis data, dapat ditentukan jenis data dan
hubungannya deangan data lain Skema basis data merupakan diskripsi dari
basis data yang spesifikasinya ditentukan dalam tahap perancangan. Skema ini
digunakan untuk memisahkan antara fisik basis data dan program aplikasi
pemakai. Penggambaran skema bsisi data biasanya ditampilkan dalam diagram
yang berisi sebagian detail data dari diskripsi basis data. Secara umum arsitektur
basis data menggunakan arsitektur tiga skema yang meliputi tiga level yaitu :
1. Level Internal atau skema internal. Level ini mendifinisikan secara detail
penyimpanan basis data dan pengaksesan data. Pada level ini memuat diskripsi
struktur penyimpanan basis data, menggunakan model data fisikal,
2. Level Konseptual (skema konseptual), memuat diskripsi struktur basis data
seara keseluruhan untuk semua pemakai. Level ini memuat diskripsitentang
entity, atribut, relasi dan konstrain tanpa memuat diskripsi data secara detail.
3. Level eksternal (skema eksternal atau view), mendefinisikan pandangan data
terhadap sekelompok pemakai(local view) dengan menyembunyikan data lain
yang tidak diperlukan oleh kelompok pemakai tersebut.

Gambar 2. 3. Arsitektur tiga-skema sistem manajemen basis data

b. Pemodelan data
Pemodelan data merupakan sarana untuk melakukan abstraksi data.
Merupakan sejumlah konsep untuk membuat diskripsi stuktur basis data.
Kebanyakan model data memuat spesifikasi untuk operasi dasar (basic
operation) dalam pengaksesan dan pembaharuan data. Pada perkembangan
4

terakhir dikenal dengan istilah tabiat data (data behavior) pada pemrograman
berorientasi object. Terdapat sejumlah cara dalam merepresentasikan model
dalam perancangan basis data. Secara umum pemodelan data dapat
dikelompokkan menjadi dua yaitu :
1. Object based logical model. Dalam pemodelan ini struktur atau hirarki basis
data diilustrasikan berdasarkan object. Model ini meliputi: 1) Model
keterhubungan entitas (Entity Relationalship Model atau ERD). 2) Model
berorientasi object (Object-Oriented Model). 3) Model Data Semantik(Semantic
Data Model). 2) Model data Fungsional (Function Data Model).
2. Record-based logical model. Dalam model ini struktur basis data diilustrasikan
berdasarkan record. Model ini meliputi: 1) Model relational (Relational Model). 2)
Model Herarkis (Hierarchical Model). 3) Model Jaringan (Network Model).
c. Struktur konseptual basis data
Tiga konsep dasar dalam pembuatan diskripsi struktur basis data yaitu model
data konseptual, model data fisikal dan model view.Konseptual data menyajikan
konsep tentang bagaimana user basis data memandang atau memberlakukan
data. Konseptual merupakan level tinggi (hight level) yang dekat dengan user.
Didalam Konseptual data menjelaskan beberapa hal yaitu entitas, atribute, key
dan relasi antar entitas.
a) Entity atau Entitas
Entitas adalah obyek yang mewakili sesuatu dalam dunia nyata dan dapat
dibedakan antara satu dengan lainnya (unique).Setiap entitas memiliki beberapa
atribut yang mendeskripsikan karakteristik dari objek. Entitas dapat berupa:
 Data Fisik (seperti mobil, rumah, manusia, pegawai, peserta didik.
 Abstrak atau konsep (seperti department, pekerjaan, mata pelajaran)
 Kejadian (pembelian, penjualan, peminjaman, dll)
Entitas dapat dibedakan menjadi dua macam yaitu Entitas kuat dan entitas
lemah. Entitas lemah adalah yang keberadaannya tergantung pada entitas lain.
Gambar dibawah ini menjelaskan notasi umum entitas kuat dengan nama entitas
pegawan dan entitas lemah dengan nama entitas tanggungan. Entitas
tanggungan disebut sebagai entitas lemah karena jika data seorang pegawai
dihapus maka data tanggungannya juga akan terhapus. Keberadaan data
tanggungan tergantung pada data di pegawai
5

Gambar 2. 4. Notasi entitas kuat (kotak satu) dan entitas lemah kotak dua

b) Atribute,
Attribute merupakan karakteristik dari entitas atau relationship, yang
menyediakan penjelasan detail tentang entitas atau relationship. Dalam
penerapannya (level fisik) atribut merupakan field atau kolom dari sebuah tabel.
Misalnya entitas mahasiswa memiliki atribute nama, alamat, NIM. Berdasarkan
karakteristik sifatnya, atribut dapat dikelompokkan menjadi; 1) Simple attribute
dan composite attribute. 2) Single valued attribute dan multi valued attribute. 3)
Mandatory attribute 4) Derived attribute (attribut turunan) dan 5) key attribute.
Simple Attribute atau atomic attribute adalah attribut terkecil yang tidak bisa
dipilah lagi. suatu atribut yang tidak dapat dibagi-bagi lagi menjadi atribut yang
lebih kecil. Contohnya adalah atribut JenisKel pada entitas pegawai.
Composite attribute adalah atribut yang dapat dibagi menjadi atribut yang
lebih kecil. Attribut ini dapat diartikan attribute atomic yang menggambarkan
atribut dasar dengan suatu arti tertentu. Contoh: atribut Nama pada entitas
pegawai dapat dipecah menjadi atribut NmDepan, Inisial dan NmBlk. Atribut
nama merupakan composite attribute.
Single value Attribute adalah suatu atribut yang hanya mempunyai satu nilai.
Misalnya atribut NmDepan pada entitas pegawai. NmDepan seorang pegawai
selalu bernilai satu nilai, tidak mungkin lebih dari satu.
Multi Value attribute adalah atribut yang dapat memiliki lebih dari satu nilai
yang jenisnya sama dari sebuah data tunggal. Misalnya atribut lokasi pada
entitas departemen dapat berisi 2 nilai atau lebih seperti Surabaya atau Jakarta.
Derived Attribute atau Attribut Turunan adalah atribut yang nilai-nilainya
diperoleh dari pengolahan atau dapat diturunkan dari atribut atau tabel lain yang
berhubungan. Misalnya atribut JmlPegawai pada entitas Departemen. Gambar
diatas menjelaskan simbol atau notasi Multi Value attribute
c) Key attribute.
Key adalah merupakan suatu atribut yang menandakan kunci dari suatu entitas
yang bersifat unik. Key attribute adalah satu atau beberapa atribut yang
6

mempunyai nilai unik sehingga dapat digunakan untuk membedakan data pada
suatu baris/record dengan baris lain pada suatu entitas. Key attribute dibedakan
menjadi tiga yaitu: 1) Superkey 2) Candidat Key dan 3) Primary key Tabel
dibawah ini menjelaskan beberapa contoh nama entitas beserta nama atribut-
atributnya

Tabel 2. 1. Daftar entitas dan atributnya

Nama Entitas Nama Attribute


Pegawai NIP, NUPTK, Nama, Alamat, Agama, Jenis Kelamin
Siswa NIS, Nama, Alamat, Agama, Jenis Kelamin
Mata Pelajaran Kode_mapel, Nama _mapel, Semester
Departemen No, Nama, Lokasi

Superkey adalah satu atau gabungan beberapa atribut yang dapat


membedakan setiap baris data dalam sebuah tabel secara unik. Misalnya
superkey untuk entitas pegawai antara lain: 1) NoKTP, Nama, Alamat, JenisKel,
Gaji. 2) NoKTP, Nama, Alamat, JenisKel. 3) NoKTP, Nama, Alamat. 4) NoKTP,
Nama. 5) Nama (jika dapat dijamin kalau tidak ada nama yang sama antara satu
baris dengan baris yang lain). 6) NoKTP.
Candidat Key adalah merupakan superkey yang jumlah atributnya paling
sedikit. Misalnya candidat key untuk entitas pegawai antara lain:
- Nama (jika dapat dijamin kalau tidak ada nama yang sama antara satu
baris dengan baris yang lain)
- NoKTP
Primary key adalah suatu candidat key yang dipilih menjadi kunci utama
karena sering dijadikan acuan untuk mencari informasi, ringkas, menjadi
keunikan suatu baris. Misalnya NoKTP antara satu pegawai dengan pegawai lain
pasti berbeda, dalam hal ini noKTP dapat digunakan sebagai suatu key.
7

Gambar 2. 5. Contoh model struktur entitas pegawai

d. Struktur Fisik Basis Data


Physical data merupakan suatu konsep bagaimana diskripsi detail data
disimpan dalam sebuah komputer. Physical data merupakan level rendah (low
level) yang mendekati ke data sebenarnya. Dalam physical data menjelaskan
definisi data yang meliputi nama atribut, type data (misalnya varchar, integer dll),
size atau ukurannya data. Data yang diimplementasikan berupa table yang terdiri
dari barisan data dalam kolom (field) dan baris (record). Setiap DBMS
mempunyai aturan-aturan tersendiri dalam membuat definisi, struktur basis data
dan tipe data yang digunakan.
Tabel 2. 2. Jenis jenis tipe data dalam DBMS Microsoft access

Text Digunakan untuk field alfanumeric (misalnya nama,


alamat,
kode pos), memiliki banyak karakter yaitu maksimal 255
karakter pada setiap fieldnya.
Memo Sama seperti text, tetapi dapat menampung kurang lebih
64.000 karakter untuk tiap fieldnya, tapi tidak bisa
diurutkan/diindekskan.
AutoNumber Tidak dapat disi secara manual tapi terisi secara otomatis
oleh Access, secara berurutan atau acak biasanya
digunakan untuk penomoran.
Number Dapat digunakan untuk menyimpan data numeric yang
akan
digunakan untuk proses perhitungan matematis
(mengurangi, menambahkan, mengkali dan membagi)
suatu bilangan
Date/Time Digunakan untuk data yang berjenis tanggal, waktu atau
penggabungan dari tanggal dan waktu
Currency Tipe jenis number, tetapi pada awal angka selalu
disertakan symbol currency default sesuai dengan regional
setting yang digunakan, misalnya RP. $. Dapat
menggunakan angka dengan 15 dgiit dibelakang desimal
dan 4 digit sesudah desimal
8

Yes/No Merupakan tipe data dengan 2 pilihan saja yaitu Yes (1


atau
Ture) dan No (0 atau False). Format yang tersedia adalah
Yes/No, True/False, dan On/OFF
OLE Object Digunakan untuk eksternal objek, seperti bitmap atau file
suara
Hyperlink Digunakan untuk menyimpan alamat internet atau file yang
ditunjukan melalui alamat URL
Lookup Wizard Jika menggunakan tipe data ini untuk sebuah field, maka
bisa memilih sebuah nilai dari tabel lain atau dari sebuah
daftar nilai yang ditampilkan dalam combobox

Gambar 2. 6. Contoh diskripsi struktur tabel mahasiswa dan tabel dosen

Gambar 2. 7. Contoh struktur tabel dalam basis data sistem nilai mahasisw

2. Normalisasi
a. Bentuk-Bentuk Normalisasi
Normalisasi data adalah proses yang berkaitan dengan model data relasional
untuk mengorganisasi himpunan data dengan ketergantungan dan keterkaitan
yang tinggi atau erat. Hasil dari proses normalisasi adalah tabel–tabel data dalam
bentuk normal (normal form), yaitu tabel–tabel data yang terhindar dari dua hal
yaitu:
9

Pengulangan informasi.
Potensi inkonsistensi data pada operasi pengubahan.
Terdapat enam bentuk normal (normal form) dalam teknik normalisasi data,
keenam bentuk tersebut adalah :
a) Bentuk Normal Tahap pertama (1st Normal Form)
b) Bentuk Normal Tahap Kedua (2nd Normal Form)
c) Bentuk Normal Tahap Ketiga (3rd Normal Form)
d) Bentuk Normal Boyce - Code (BCNF)
e) Bentuk Normal Tahap Keempat (4rd Normal Form)
f) Bentuk Normal Tahap Kelima (4rd Normal Form)
b. Proses-Proses Normalisasi data
Dalam 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. Langkah-langkah yang dilakukan dalam melakukan normalisasi
data diperlihatkan dalam gambar dibawah ini:
10

Gambar 2. 8. Langkah-langkah proses normalisasi data

c. Bentuk tidak normal (Unnormalized Form)


Bentuk ini memiliki ciri-ciri, yaitu :
1) Merupakan kumpulan data yang akan direkam
2) Tidak ada keharusan mengikuti suatu format tertentu
3) Dapat saja data tidak lengkap atau terduplikasi
4) Data dikumpulkan apa adanya sesuai dengan kedatangannya.
d. Bentuk Normal Tahap pertama (1st Normal Form)
Bentuk normal ke satu 1 NF ini mempunyai beberapa ciri antara lain yaitu:
1) Setiap data dibentuk dalam flat file (file data/ rata)
2) Data dibentuk dalam satu record demi satu record dan nilai dari field field
a. berupa "atomic value", tidak dapat dibagi-bagi lagi.
3) Tidak ada set atribute yang berulang ulang atau atribute bernilai ganda
b. (multivalue).
4) Tidak ada set atribut composite atau kombinasinya dalam domain data
c. yang sama.
11

5) Tiap field hanya satu pengertian, bukan merupakan kumpulan kata yang
d. mempunyai arti mendua, hanya satu arti saja dan juga bukanlah pecahan
e. kata sehingga artinya lain.
Contoh dari tabel yang belum memenuhi 1NF :

Gambar 2. 9. Contoh data pada tabel yang belum memenuhi 1NF

Atau bentuk entitas seperti berikut :

Gambar 2. 10. Contoh lain dari data pada tabel lain yang belum memenuhi 1NF

Untuk dapat memenuhi aturan 1NF, maka dilakukan penataan ulang data
(dekomposisi) menjadi 2 entitas, yakni entitas siswa dan entitas hobi seperti
gambar berikut :
12

Gambar 2. 11. Hasil dekomposisi tabel untuk memenuhi bentuk 1NF

e. Bentuk Normal Tahap Kedua (2nd Normal Form)


Bentuk normal kedua mempunyai syarat yaitu:
1) Bentuk data telah memenuhi kriteria bentuk normal kesatu.
2) Atribute bukan kunci haruslah bergantung secara fungsi pada kunci
utama atau primary key.
3) Sudah ditentukan kunci kunci field, dimana kunci field haruslah unik dan
dapat mewakili atribute lain yang menjadi anggotanya.
Sebagai contoh ditentukan sebuah tabel siswa sebagai berikut :
NIS Nama_siswa Alamat Kode_ Mapel Nama_Mapel Nama_Guru Nilai Tabel di
atas telah memenuhi 1NF, namun belum memenuhi 2NF, {NIS, Kode_Mapel}
yang dianggap sebagai primary key sedangkan:

Gambar 2. 12. Contoh tabel siswa

Tabel di atas perlu didekomposisi menjadi beberapa tabel untuk memenuhi


syarat 2NF. Dekomposisi sesuai dengan functionaldependencynya (FD) adalah
13

sebagai berikut :
FD 1 : {NIS, Kode_Mapel} Nilai
FD 2 : NIS {Nama_siswa, Alamat}
FD 3 : Kode_mapel {Nama_mapel, Nama_guru}
Dari ketiga FD di atas, maka dilakukan dekomposisi tabel menjadi sebagai
berikut :
Tabel Nilai : (NIS, Kode_mapel, Nilai)
Tabel Siswa :(NIS, Nama_siswa, Alamat)
Tabel Mapel :(Kode_mapel, Nama_mapel, Nama_Guru)
f. Bentuk Normal Tahap Ketiga (3rd Normal Form)
Untuk menjadi bentuk normal ketiga (3 NF) suatu tabel harus mempunyai ciri-
ciri sebagai berikut:
1) Memenuhi bentuk 2 NF (normal kedua)
2) Atribut bukan kunci tidak memiliki dependensi transitif terhadap kunci
utama atau primary key.
3) Setiap atribute bukan kunci haruslah bergantung hanya pada primary key
dan pada primary key secara menyeluruh
Berikut ini adalah contoh relasi yang telah memenuhi bentuk 2 NF, tetapi belum
memenuhi bentuk 3 NF :
NIS Nama_siswa Alamat_jln Alamat_kota Alamat_prov Kodepos
Pada relasi di atas, masih terdapat atribut non primary key (yakni Alamat_kota
dan Alamat_Prov) yang memiliki ketergantungan terhadap atribut non primary
key yang lain, yaitu Kode_pos.
Kodepos {Alamat_kota, Alamat_prov}
Untuk memenuhi syarat 3NF, maka relasi tersebut harus didekomposisi sebagai
berikut :
Siswa : (NIS, Nama_siswa, Alamat_jn, Kodepos)
Kodepos : (Kodepos, Alamat_kota, Alamat_prov)

3. Perintah DDL, DML dan DCL


Secara umum, SQL terdiri dari tiga bahasa, yaitu Data Definition
Language(DDL), Data Manipulation Language (DML) dan Data Control Language
(DCL). Implementasi DDL, DML dan DCL berbeda untuk tiap sistem manajemen
basis data (SMBD), namun secara umum implementasi tiap bahasa ini memiliki
14

bentuk standar yang ditetapkan ANSI. Jadi, perintah SQL pada semua software
database hampir sama. Secara umum perintah-perintah dari DDL, DML dan DCL
dapat anda lihat dari skema gambar diatas, dan untuk penjelasannya silahkan
simak dibawah ini:

Gambar 2. 13. Sql Command

a. DDL (Data Definition Language)


DDL merupakan perintah SQL yang berhubungan dengan pendefinisian
suatu struktur database yang digunakan untuk membuat, mengubah dan
menghapus struktur dan definisi metadata dari objek-objek database. Beberapa
perintah dasar yang termasuk DDL ini antara lain :

CREATE

Perintah ini digunakan untuk membuat, termasuk diantaranya membuat database


baru, tabel baru, view baru, dan kolom.

Contoh: CREATE DATABASE nama_database

ALTER
Perintah ini digunakan untuk mengubah struktur tabel yang telah dibuat.
Pekerjaannya mencakup mengganti nama tabel, menambah kolom, mengubah
kolom, menghapus kolom, maupun memberikan atribut pada kolom.

Contoh: ALTER TABLE nama_tabel ADD nama_kolom datatype


15

RENAME
Perintah yang digunakan untuk merubah nama Objek

DROP
Perintah ini digunakan untuk menghapus database dan tabel.

Contoh: DROP DATABASE nama_database

b. DML (Data Manipulation Language)


DML merupakan perintah SQL yang digunakan untuk proses pengolahan isi
data di dalam table seperti memasukkan, merubah dan menghapus isi data - dan
tidak terkait dengan perubahan struktur dan definisi tipe data dari objek
database.
Perintah SQL yang termasuk dalam DML antara lain :

UPDATE

Perintah ini digunakan untuk memperbaharui data lama menjadi data terkini. Jika
anda memiliki data yang salah atau kurang Up To Date dengan kondisi sekarang,
maka dapat diubah isi datanya dengan menggunakan perintah UPDATE.

Contoh: UPDATE nama_tabel SET kolom1=data1, kolom2=data2,… WHERE


kolom=data;

INSERT
perintah ini digunakan untuk menyisipkan atau memasukkan data baru ke dalam
tabel. Penggunaannya setelah database dan tabel selesai dibuat.

Contoh: INSERT INTO nama_tabel VALUES (data1, data2, dst…);

SELECT
Perintah ini digunakan untuk mengambil data atau menampilkan data dari satu
tabel atau beberapa tabel dalam relasi. Data yang diambil dapat kita tampilkan
dalam layar prompt MySQL secara langsung maupun ditampilkan pada tampilan
aplikasi.

Contoh: SELECT nama_kolom1, nama_kolom2 FROM nama_tabel;


16

DELETE
Perintah ini digunakan untuk menghapus data dari tabel. Biasanya data yang
dihapus adalah data yang tidak diperlukan lagi. Pada saat menghapus data,
perintah yang telah dijalankan tidak dapat digagalkan, sehingga data yang telah
hilang tidak dapat dikembalikan lagi.

Contoh: DELETE FROM nama_tabel WHERE kolom=data;

c. DCL (Data Control Language)


DCL merupakan perintah SQL yang berhubungan dengan manipulasi user
dan hak akses (priviledges). Perintah SQL yang termasuk dalam DCL antara lain
:
GRANT
Perintah ini digunakan untuk memberikan hak / izin akses oleh administrator
(pemilik utama) server kepada user (pengguna biasa). Hak akses tersebut
berupa hak membuat (CREATE), mengambil (SELECT), menghapsu (DELETE),
mengubah (UPDATE) dan hak khusus berkenaan dengan sistem databasenya.
REVOKE
perintah ini memiliki kegunaan terbalik dengan GRAND, yaitu untuk
menghilangkan atau mencabut hak aksesyang telah diberikan kepada user oleh
administrator.

4. Tipe Data pada Basis Data


Tipe data digunakan untuk mendefinisikan suatu field atau kolom. Setiap
kolom yang dibuat harus didefinisikan terlebih dahulu. Jenis – jenis tipe data ada
bermacam – macam. Bisa numerik yang digunakan untuk angka dan proses
perhitungan, bisa karakter / teks, tanggal atau Biner. Berikut ini Macam – macam
tipe data yang digunakan di SQL :
1. Tipe Numerik
Tipe data numerik digunakan untuk menyimpan data numeric (angka). Ciri utama
data numeric adalah suatu data yang memungkinkan untuk dikenai operasi
aritmatika seperti pertambahan, pengurangan, perkalian dan pembagian. Berikut
ini tipe field (kolom) di MySQL yang termasuk ke dalam kelompok tipe numerik:
TINYINT
17

Penggunaan : digunakan untuk menyimpan data bilangan bulat positif dan


negatif.
Jangkauan : -128 s/d 127
Ukuran : 1 byte (8 bit)
SMALLINT
Penggunaan : digunakan untuk menyimpan data bilangan bulat positif dan
negatif..
Jangkauan : -32.768 s/d 32.767
Ukuran : 2 byte (16 bit).
MEDIUMINT
Penggunaan : digunakan untuk menyimpan data bilangan bulat positif dan
negatif.
Jangkauan : -8.388.608 s/d 8.388.607
Ukuran : 3 byte (24 bit)
INT
Penggunaan : digunakan untuk menyimpan data bilangan bulat positif dan
negatif.
Jangkauan : -2.147.483.648 s/d 2.147.483.647
Ukuran : 4 byte (32 bit).
BIGINT
Penggunaan : digunakan untuk menyimpan data bilangan bulat positif dan
negatif.
Jangkauan : ± 9,22 x 1018
Ukuran : 8 byte (64 bit)
FLOAT
Penggunaan : digunakan untuk menyimpan data bilangan pecahan positif dan
negatif presisi tunggal.
Jangkauan : 3.402823466E+38 s/d -1.175494351E-38, 0, dan 1.175494351E-38
s/d 3.402823466E+38.
Ukuran : 4 byte (32 bit).
DOUBLE / REAL
Penggunaan : digunakan untuk menyimpan data bilangan pecahan positif dan
negatif presisi ganda.
18

Jangkauan : -1.79…E+308 s/d -2.22…E-308, 0, dan 2.22…E-308 s/d


1.79…E+308.
Ukuran : 8 byte (64 bit).
DECIMAL / NUMERIC
Penggunaan : digunakan untuk menyimpan data bilangan pecahan positif dan
negatif.
Jangkauan : -1.79…E+308 s/d -2.22…E-308, 0, dan 2.22…E-308 s/d
1.79…E+308.
Ukuran : 8 byte (64 bit).
2. Tipe Date dan Time
Tipe data date dan time digunakan untuk menyimpan data tanggal dan waktu.
Berikut ini tipe field (kolom) di MySQL yang termasuk ke dalam kelompok tipe
date dan time:
DATE
Penggunaan : digunakan untuk menyimpan data tanggal.
Jangkauan : 1000-01-01 s/d 9999-12-31 (YYYY-MM-DD)Ukuran : 3 byte.
TIME
Penggunaan : digunakan untuk menyimpan data waktu.
Jangkauan : -838:59:59 s/d +838:59:59 (HH:MM:SS)Ukuran : 3 byte.
DATETIME
Penggunaan : digunakan untuk menyimpan data tanggal dan waktu.
Jangkauan : ‘1000-01-01 00:00:00’ s/d ‘9999-12-31 23:59:59’Ukuran : 8
byte.
YEAR
Penggunaan : digunakan untuk menyimpan data tahun dari tanggal.
Jangkauan : 1900 s/d 2155
Ukuran : 1 byte.
3. Tipe String (Text)
Tipe data string digunakan untuk menyimpan data string (text). Ciri utama data
string adalah suatu data yang memungkinkan untuk dikenai operasi aritmatika
seperti pertambahan, pengurangan, perkalian dan pembagian. Berikut ini tipe
field (kolom) di MySQL yang termasuk ke dalam kelompok tipe string:
CHAR
Penggunaan : digunakan untuk menyimpan data string ukuran tetap.
19

Jangkauan : 0 s/d 255 karakter


VARCHAR
Penggunaan : digunakan untuk menyimpan data string ukuran dinamis.
Jangkauan : 0 s/d 255 karakter (versi 4.1), 0 s/d 65.535 (versi 5.0.3)
TINYTEXT
Penggunaan : digunakan untuk menyimpan data text.
Jangkauan : 0 s/d 255 karakter (versi 4.1), 0 s/d 65.535 (versi 5.0.3)
TEXT
Penggunaan : digunakan untuk menyimpan data text.
Jangkauan : 0 s/d 65.535 (216 – 1) karakter

MEDIUMTEXT
Penggunaan : digunakan untuk menyimpan data text.
Jangkauan : 0 s/d 224 – 1 karakter
LONGTEXT
Penggunaan : digunakan untuk menyimpan data text.
Jangkauan : 0 s/d 232 – 1 karakter
4.Tipe BLOB (Biner)
Tipe data blob digunakan untuk menyimpan data biner. Tipe ini biasanya
digunakan untuk menyimpan kode-kode biner dari suatu file atau object. BLOB
merupakan singkatan dari Binary Large Object. Berikut ini tipe field (kolom) di
MySQL yang termasuk ke dalam kelompok tipe blob:
BIT (sejak versi 5.0.3)
Penggunaan : digunakan untuk menyimpan data biner.
Jangkauan : 64 digit biner
TINYBLOB
Penggunaan : digunakan untuk menyimpan data biner.
Jangkauan : 255 byte
BLOB
Penggunaan : digunakan untuk menyimpan data biner.
Jangkauan : 216 – 1 byte
MEDIUMBLOB
Penggunaan : digunakan untuk menyimpan data biner.
Jangkauan : 224 – 1 byte
20

LONGBLOB
Penggunaan : digunakan untuk menyimpan data biner.
Jangkauan : 232 – 1 byte
5. Tipe Data yang Lain
Selain tipe data di atas, MySQL juga menyediakan tipe data yang lain. Tipe data
di MySQL mungkin akan terus bertambah seiring dengan perkembangan versi
MySQL. Berikut ini beberapa tipe data tambahan MySQL:
ENUM
Penggunaan : Enumerasi (kumpulan data).
Jangkauan : Sampai dengan 65535 string.
SET
Pengunaan : Combination (himpunan data).
Jangkauan : Sampai dengan 255 string anggotas

5. Latihan SQL Menggunakan Access


Pada sesi latihan ini dibahas tentang latihan Query menggunakan perintah
SELECT pada SQL Microsoft Access. Ikutilah langkah berikut:
a. Buat database dengan nama Akademik.mdb
b. Buat tabel Fakultas dengan struktur sebagai berikut:

Gambar 2. 14. Struktur tabel fakultas

c. Buat tabel Prodi dengan struktur sebagai berikut:


21

Gambar 2. 15. Struktur Tabel Prodi

d. Buat tabel Mahasiwa, dengan struktur tabel sebagai berikut:

Gambar 2. 16. Struktur tabel Mahasiswa

e. Relasikan Tabel dengan skema sebagai berikut:

Gambar 2. 17. Skema Basis Data Akademik

f. Masukkan Data Fakultas

Gambar 2. 18. Data Tabel Fakultas


22

g. Masukkan Data Prodi

Gambar 2. 19. Data prodi

h. Masukkan Data Mahasiswa

Gambar 2. 20. Data tabel Mahasiswa

6. Bentuk Umum SQL

SELECT DaftarField
FROM namaTabel
WHERE syarat

catatan:
SELECT, FROM dan WHERE disebut
Klausa/perintah (ditulis apa adanya)
23

a. Menampilkan Seluruh field suatu tabel

 Menampilkan seluruh field pada tabel Fakultas


SELECT *
FROM Fakultas

 Menampilkan seluruh field pada tabel Prodi


SELECT *
FROM Prodi;
 Tampilkan seluruh field pada tabel Mahasiswa
SELECT *
FROM Mahasiswa

b. Menampilkan beberapa Field

 Tampilkan Nama dan Alamat pada Tabel Mahasiswa.


SELECT NamaMahasiswa, Alamat
FROM Mahasiswa
 Tampilkan NamaFakultas dan Dekan pada tabel Fakultas
SELECT NamaFakultas, NamaDekan
FROM Fakultas
 Tampilkan Namaprodi saja pada tabel Prodi
SELECT NamaProdi
FROM Prodi
 Tampilkan KodeProdi dan Nama Prodi pada tabel Prodi
SELECT KodeProdi, NamaProdi
FROM Prodi

c. Filter data

 Tampilkan semua isi field tabel Mahasiswa yang tinggal di Bantul


SELECT *
FROM Mahasiswa
WHERE Alamat = “Bantul”
24

 Tampilkan semua isi field pada tabel Prodi yang ode Fakultasnya = 4
SELECT *
FROM Prodi
WHERE KodeFakultas = 4
 Tampilkan NamaProdi dan KetuaProdi prodi dimana KodeFakultas = 2
SELECT NamaProdi, KetuaProdi
FROM Prodi
WHERE kodeFakultas = 2;

d. Menampilkan data dari beberapa tabel

 Tampilkan NamaFakultas dan NamaProdi yang berasl dari tabel Fakultas


dan Prodi
SELECT NamaFakultas, NamaProdi
FROM Fakultas, Prodi
WHERE Fakultas.KodeFakultas = Prodi.KodeFakultas
 Tampilkan NamaProdi, NPM, NamaMahasiswa dari Tabel Prodi dan
Mahasiswa.
SELECT NamaProdi, NPM, NamaMahasiswa
FROM Prodi, Mahasiswa
WHERE Prodi.KodeProdi = Mahasiswa.KodeProdi
 Tampilkan NPM, NamaMahasiswa, NamaProdi, NamaFakultas dari tabel
Prodi, Mahasiswa, Fakultas
SELECT NPM, NamaMahasiswa, NamaProdi, NamaFakultas
FROM Prodi, Mahasiswa, Fakultas
WHERE (Prodi.KodeProdi = Mahasiswa.KodeProdi) AND
(Fakultas.KodeFakultas = Prodi.KodeFakultas)

e. Menggunakan nama field yang sama

 Tampilkan KodeFakultas, NamaFakultas, NamaProdi dari Tabel Fakultas


dan Prodi
SELECT Fakultas.KodeFakultas, NamaFakultas, NamaProdi
FROM Fakultas, Prodi
25

WHERE Fakultas.KodeFakultas = Prodi.KodeFakultas Catatan: Nama


tabel harus dicantumkan jika field tersebut juga ada pada tabel yang lain.
 Tampilkan NPM, NamaMahsiswa, KodeFakultas, NamaFakultas,
KodeProdi, dan NamaProdi dari rabel Fakultas,
Mahasiswa dan Prodi
SELECT NPM, NamaMahasiswa,Fakultas.KodeFakultas,
NamaFakultas, Prodi.KodeProdi, NamaProdi,
FROM Prodi, Mahasiswa, Fakultas
WHERE (Fakultas.KodeFakultas = Prodi.KodeFakultas) AND
(Prodi.KodeProdi = Mahasiswa.KodeProdi)

f. Operator Logika

 Tampilkan NamaMahasiswa dengan Kodeprodi = 11 dan alamat =


“Bantul”
SELECT NamaMahasiswa
FROM Mahasiswa
WHERE (KodeProdi = 11) AND (Alamat = “Bantul”)
 Tampilkan NPM, NamaMahasiswa dengan Alamat=”Bantul” atau
Alamat=”Sleman”
SELECT NPM, NamaMahasiswa
FROM Mahasiswa
WHERE Alamat = “Bantul” OR Alamat = “Sleman”
 Tampilkan NamaProdi dan NamaMahasiswa yang tinggal di Bantul
SELECT NamaProdi, NamaMahasiswa
FROM Prodi, Mahasiswa
WHERE Alamat=“Bantul” AND Prodi.KodeProdi = Mahasiswa.KodeProdi

 Tampilkan NamaFakultas, NamaProdi, NPM, NamaMahasiswa yang


tinggal di Bantul atau Sleman
SELECT NamaFakultas, NamaProdi, NPM, NamaMahasiswa
FROM Fakultas, Prodi, Mahasiswa
WHERE (Fakultas.KodeFakultas = Prodi.KodeFakultas) AND
(Prodi.KodeProdi = Mahasiswa.Kodeprodi) AND ((Alamat = “Bantul”) OR
(Alamat=“Sleman”))
26

g. Operator NOT

 Tampilkan seluruh field tabel Mahasiswa yang tidak berlamat Bantul.


SELECT *
FROM Mahasiswa
WHERE ALAMAT <> “Bantul’
atau dengan menggunakan Klausa NOT dapat ditulis:
SELECT *
FROM Mahasiswa
WHERE NOT (ALAMAT = “Bantul”)

h. WILD CHAR

 * (Asterisk) –> artinya semua/bebas


 ? –> Menggantikan satu huruf
 Tampilkan Nama Mahasiswa yang huruf depannya A
SELECT NamaMahasiswa
FROM Mahasiswa
WHERE NamaMahasiswa LIKE “A*”
 Tampilkan NamaMahasiswa yang huruf belangkangnya A
SELECT NamaMahasiswa
FROM Mahasiswa
WHERE NamaMahasiswa LIKE “*A”
 Tampilkan NamaMahasiswa yang mengandung huruf a
SELECT NamaMahasiswa
FROM Mahasiswa
WHERE NamaMahasiswa LIKE “*a*”
 Tampilkan NamaMahasiswa yang huruf keduanya a
SELECT * NamaMahasiswa
FROM Mahasiswa
WHERE NamaMahasiswa LIKE “?A*”
27

i. Pengurutan (ORDER BY)

 Tampilkan NamaMahasiswa, Alamat dari Tabel Mahasiswa urut Alamat


SELECT NamaMahasiswa, Alamat
FROM Mahasiswa
ORDER BY Alamat;
 Tampilkan Nama, Alamat dari tabel Mahasiswa urut Nama dengan urut
menurun (Descending)
SELECT NamaMahasiswa, Alamat
FROM Mahasiswa
ORDER BY NamaMahasiswa DESC;
 Tampilkan Alamat, Nama dari Tabel Mahasiswa urut Alamat,
NamaMahasiswa
SELECT Alamat, NamaMahasiswa
FROM Mahasiswa
ORDER BY Alamat, NamaMahasiswa;

j. Fungsi Left (string,n)

Mengambil n karakter dari kiri suatu string.

 Tampilkan 3 huruf nama mahasiswa


SELECT Left(NamaMahasiswa, 3)
FROM Mahasiswa;

 Tampilkan nama Mahasiswa yang huruf pertamnya


SELECT NamaMahasiswa
From Mahasiswa
WHERE LEFT(NamaMahasiswa,1) =“A”

k. Fungsi MID (string,i,n)

Digunakan untuk mengambil n karakter dari string mulai posisi ke i.

 Tampilkan 3 karakter mulai dari karakter kedua dari NamaMahasiswa;


SELECT MID(namamahasiswa, 2, 3)
28

FROM Mahasiswa;
Jika terdapat nama “Ahmad” maka akan tampil “hma”

l. Fungsi Right(string,n)

Mengambil n karakter dari Kanan suatu string.

 Tampilkan 3 huruf terakhir nama mahasiswa


SELECT RIGHT(NamaMahasiswa, 3)
FROM Mahasiswa;
 Tampilkan nama Mahasiswa yang huruf terakhirnya A
SELECT NamaMahasiswa
FROM Mahasiswa
WHERE RIGHT(NamaMahasiswa,1) =“A”

m. Fungsi Ucase(string)

Digunakan untuk mengubah string menjadi huruf kapital.

 Tampilkan nama mahasiswa dalam huruf kapital.


SELECT UCASE (NamaMahasiswa) As NamaKapital
FROM Mahasiswa

n. Fungsi LCASE(string)

Digunakan untuk mengubah string menjadi huruf kecil.

 Tampilkan nama mahasiswa dalam huruf kecil.


SELECT LCASE (NamaMahasiswa) As NamaKecil
FROM Mahasiswa

o. Menggabungkan String

 Tampilkan nama Mahasiswa dan alamat dalam satu kolom.


SELECT NamaMahasiswa + ‘ – ‘ + Alamat AS NamaAlamat
FROM Mahasiswa
29

p. Fungsi Year(tanggal)

Menampilkn tahun dari sebuah tanggal.

 Tampilkan tahun lahir dari Mahasiswa.


SELECT YEAR (TanggalLahir) As TahunLahir
FROM Mahasiswa;
 Tampilkan nama, umur dari mahasiswa
SELECT NamaMahasiswa, YEAR(DATE())-
YEAR(TGLLAHIR) AS Umur FROM Mahasiswa;
Cara lain:
SELECT NamaMahasiswa, (DATE()-TGLLAHIR)/365 AS Umur
FROM Mahasiswa;

q. Fungsi MONTH(tanggal)

Digunakan untuk mengambil bulan dari tanggal

1. Tampilkan nama, tgllahir, dan bulan lahir dari mahasiswa dalam kolom
yang berbeda
SELECT NamaMahasiswa, TanggallLahir, MONTH(TanggalLahir) AS
BulanLahir
FROM Mahasiswa;

r. Fungsi DAY(tanggal)

Digunakan untuk mengambil hari (1 – 31) dari data tanggal


Tampilkan nama, tgllahir, dan hari lahir (1 – 31) dari mahasiswa;

SELECT NamaMahasiswa, TanggallLahir, DAY(TanggalLahir) AS HariLahir


FROM Mahasiswa;

7. Latihan Pembuatan Query


Query dalam Microsoft Access adalah sebuah permintaan atau panggilan
suatu data dalam sebuah data base, sebenarnya Fungsi Queri ini mempunyai
fungsi yang hampir sama dengan Filter pada Microsoft Excel. Query dalam
30

Microsoft Access mempunyai kelebihan dari Filter pada Microsoft Excel antara
lain dapat menampilkan data dari dua table atau lebih dengan mudah. Untuk
memahami Query kalian harus mampu membuat atau memahami table/database
terlebih dahulu. Langkah langkah membuat Query dalam Microsoft Access.
1. Membuat Query dalam Microsoft access, berarti Anda sudah mempunyai
table/database,
2. Bukalah database tersebut. Kemudian Klik Create terus pilih Query, seperti
pada gambar dibawah ini .

3. Pilihlah table yang akan dibuat Query, kemudian pilih Add seperti pada
gambar dibawah ini.
31

Gambar 2. 21. Query dalam Microsoft Access

Ingat pembuatan Query adalah sebuah penyederhanaan dari sebuah table, kita
juga harus mempunyai table untuk dibuat Query. Pada gambar di atas yang
akan kita buat Query adalah table dengan nama “Fakultas”, “Mahasiswa”, dan
“Prodi” seperti pada gambar dibawah ini.

4. Berilah centang pada data yang ingin kita tunjukkan pada tabel baru hasil
pembuatan dari Query. Misalnya kita ingin menampilkan nama dan jumlah nilai
sehingga akan, maka kita akan memilih kedua tersebut, perhatikan gambar
dibawah ini untuk lebih memahami tentang pembuatan Query dalam Microsoft
Access
32

Gambar 2. 22. Query dalam Microsoft Access

Terlihat pada gambar di atas, field-field yang akan dipilih adalah NPM dari tabel
Mahasiswa, Field NamaMahasiswa dari tabel Mahasiswa, field NamaProdi dari
tabel Prodi dan Field NamaFakultas, dari tabel Fakultas, baris Sort dapat
membuat sort dalam query caranya hampir sama dengan sort dan filter pada
Microsoft Excel, show yang diconteng digunakan untuk menampilkan data
table.

5. Setelah itu pilih View, kemudian pilih datasheet view, seperti pada gambar
dibawah ini
33

Gambar 2. 23. Query dalam Microsoft Access

6. Tampilan akhir dari query yang akan kita buat nanti hasilnya adalah berupa
datasheet, seperti pada gambar dibawah ini.

Gambar 2. 24. Query dalam Microsoft Access


34

Pada gambar di atas tabel hanya menampilkan NPM, NamaMahasiswa,


NamaProdi, NamaFakultas, ingat query ini sebenarnya hampir sama dengan
filter dalam Microsoft Excel saja.

8. Pembuatan Form
Form digunakan untuk data entry (memasukan data) yang akan
tersimpan dalam table atau query tergantung sumber (source) Form
tersebut. Langkah membuat Form sbb:
a. Pilih menu Create
b. Klik icon Form

Gambar 2. 25. Menu Create

c. Sehingga muncul hasil seperti gambar di bawah ini


35

Gambar 2. 26. Form hasil query

d. Jika ingin mendesain dengan lebih fleksibel, Klik Form


Wizard, sehingga muncul dialog di bawah, lalu ikuti wizard
yang ada.

Gambar 2. 27. Form Wizard


36

e. Silakan Anda lanjutkan untuk memperoleh report yang sesuai


tampilan yang diinginkan.

E. Rangkuman
Struktur atau arsitektur basis data merupakan serangkaian pengetahuan
tentang komponen penyusun data beserta hubungan komponen tersebut.
Representasi struktur basis data diwujudkan dalam pemodelan data. Struktur
tersebut meliputi File, table, field, record indeks, abstraksi data dan serangkaian
konsep yang digunakan untuk membuat diskripsi struktur basis data. Abstraksi
data merupakan suatu pendekatan dalam menggambarkan suatu data. Abstraksi
data dapat diwujudkan dalam suatu skema basis data. Skema basis data
merupakan diskripsi dari basis data yang spesifikasinya ditentukan dalam tahap
perancangan. Skema ini digunakan untuk memisahkan antara fisik basis data
dan program aplikasi pemakai.
Arsitektur yang sering digunakan untuk membuat abstraksi data adalah arsitektur
tiga skema yang meliputi tiga level yaitu: 1) Level Internal atau skema internal. 2)
Level Konseptual atau skema konseptual 3) Level eksternal (skema eksternal
atau view).
Pemodelan data dapat dikelompokkan menjadi dua yaitu: 1) Object based
logical model dan 2) Record-based logical model. Skema atau level Konseptual
data menjelaskan tentang entitas, atribute, key dan relasi antar entitas. Entitas
adalah obyek yang mewakili sesuatu dalam dunia nyata dan dapat dibedakan
antara satu dengan lainnya (unique). Attribute merupakan karakteristik dari
entitas atau relationship. Key adalah merupakan suatu atribut yang menandakan
kunci dari suatu entitas yang bersifat unik Physical data merupakan suatu konsep
bagaimana diskripsi detail data disimpan dalam sebuah komputer. Physical data
menjelaskan definisi data yang meliputi nama atribut, type data (misalnya
varchar, integer dll), size atau ukurannya data. Setiap DBMS mempunyai aturan-
aturan tersendiri dalam
membuat definisi, struktur basis data dan tipe data yang digunakan.
Normalisasi data adalah proses yang berkaitan dengan model data relasional
untuk mengorganisasi himpunan data dengan ketergantungan tinggi. Hasil dari
proses normalisasi adalah tabel data dalam bentuk normal. Terdapat enam
37

bentuk normal tabel yaitu: 1) Bentuk Normal Tahap pertama (1st NF). 2) Bentuk
Normal Tahap Kedua (2nd NF). 3) Bentuk Normal Tahap Ketiga (3rd NF). 4)
Bentuk Normal Boyce - Code (BCNF). 5) Bentuk Normal Tahap Keempat (4rd
NF). 6) Bentuk Normal Tahap Kelima (4rd NF) BCNF merupakan bentuk normal
sebagai perbaikan terhadap 3NF. Suatu relasi yang memenuhi BCNF selalu
memenuhi 3NF, tetapi tidak untuk sebaliknya. Suatu relasi yang memenuhi 3NF
belum tentu memenuhi BCNF. Karena dalam bentuk 3 NF masih memungkinkan
terjadi anomali Suatu tabel relasional dikatakan dalam bentuk normal keempat
(4NF) jika memenuhi beberapa ketentuan sebagai berikut: 1) Bila dan hanya bila
telah berada dalam bentuk BCNF dan tidak ada multivalued dependency
nontrivial. 2) Multivalued dependency (MVD) dipakai dalam bentuk normal
keempat (4NF). 3) Dependensi ini dipakai untuk menyatakan hubungan one to
manyBentuk normal 5NF terpenuhi jika tidak dapat memiliki sebuah lossless
decomposition menjadi tabel-tabel yg lebih kecil. Jika 4 bentuk normal
sebelumnya dibentuk berdasarkan functional dependency, 5NF dibentuk
berdasarkan konsep join dependence.
Penerapan normalisasi mengakibatkan efek samping yang tidak
diharapkan,yaitu:1) Proses dekomposisi relasi akan mengakibatkan munculnya
duplikasi rinci data pada atribut kunci penghubung (foreign key). 2) Dekomposisi
relasi membuka kemungkinan tidak terpenuhi integritas refernsial (referential
integrity) dalam basis data. 3) Dekomposisi relasi akan menghasilkan semakin
banyak jumpak relasi baru, sehingga mengakibatkan inefisiensi proses
menampilkan kembali data-data dari dalam basis data. 4) Adanya batasan
penerapan pada beberapa DBMS untuk ukuran computer pribadi/PC, berkaitan
dengan batas maksimal relasi yang dapat dibuka secara bersamaan

F. Tugas
Dalam kegiatan ini peserta didik akan melakukan eksperimen atau praktikum
secara berkelompok satu kelompok terdiri dari dua sampai tiga orang.
Eksperimen dilakukan melalui pengamatan terhadap contoh aplikasi pada
kegiatan 1 kemudian merancang dan membuat struktur basis datanya. Bacalah
seluruh langkah eksperimen dibawah ini kemudian lakukan dengan cermat dan
teliti dengan perangkat yang telah disediakan.
38

1. Jalankan contoh aplikasi basis data yang telah disediakan. Amatilah tabel-
tabel yang ada dalam aplikasi database tersebut.
2. Berdasarkan pengamatan pada langkah 1, identifikasi entitasentitas basis data
dan tulislah diskripsi singkat tentang entitas tersebut.
3. Untuk setiap entitas tambahkan atribute-atribute yang ada, tulislah dalam
bentuk tabel dan tentukan pula atribute key (primary key).
4. Dengan menggunakan notasi yang telah dijelaskan gambarkan struktur basis
data level konseptual yang menjelaskan entitas beserta atribut-atributnya, tanpa
mnggambarkan relasi antar entitas.
5. Dari gambar diagram struktur entitas pada langkah 4, buatlah peta
pengkodean record data (struktur level fisik).
6. Dengan merujuk DBMS micosoft access buatlah diskripsi setiap tabel dalam
gambar langkah 5. Untuk setiap atribut tentukan tipe data, ukuran data dan key
atribut (primary key).
7. Kumpulkan data-data setiap langkah dan analisis data tersebut menggunakan
analisis diskriptif.
8. Diskusi dan komunikasikan hasilnya dalam kelompok dan buatlah kesimpulan.
9. Buatlah Laporan dan komunikasikan hasil laporan dan pembahasan dengan
guru pembimbing

G. Tes Formatif
Pilihlah jawaban yang paling tepat
1. Serangkaian pengetahuan tentang pemodelan data disebut:
A. Arsitektur Basis Data
B. UML
C. DML
D. DDL
E. DCL
2. Satuan data terkecil yang tidak dapat dipecah lagi menjadi unit lain yang
bermakna
A. Elemen
B. Rekaman
C. Berjas
39

D. Tabel
E. Database
3. Gabungan sejumlah elemen data yang saling terkait
A. Elemen
B. Rekaman
C. Berjas
D. Tabel
E. Database
4. Himpunan seluruh record yang bertipe sama
A. Elemen
B. Rekaman
C. Berjas
D. Tabel
E. Database
5. Secara umum arsitektur basis data menggunakan arsitektur tiga skema yang
meliputi tiga level yaitu :
A. Elemen, rekaman, Berkas
B. Rekaman, Berkas, Tabel
C. Berkas, Tabel, database
D. Internal, Konseptual, Eksternal
E. Physical, konseptual, prosedural
6. Karakteristik dari entitas atau relationship, yang menyediakan penjelasan
detail tentang entitas atau relationship disebut:
A. Atribute
B. Entitas
C. Key atribute
D. Parameter
E. Relasi
7. Suatu atribut yang menandakan kunci dari suatu entitas yang bersifat unik
A. Atribute
B. Entitas
C. Key atribute
D. Parameter
E. Relasi
40

8. Obyek yang mewakili sesuatu dalam dunia nyata dan dapat dibedakan
antara satu dengan lainnya (unique).
A. Atribute
B. Entitas
C. Key atribute
D. Parameter
E. Relasi
9. Atribut yang dapat dibagi menjadi atribut yang lebih kecil
A. Atribute
B. Entitas
C. Key atribute
D. Parameter
E. Composite Attirbute
10. Atribut yang nilai-nilainya diperoleh dari pengolahan atau dapat
diturunkan dari atribut atau tabel lain yang berhubungan
A. Atribute
B. Entitas
C. Key atribute
D. Multivalue atribute
E. Derrived Attribute

Soal Uraian

1. Jelaskan secara singkat definisi struktur atau arsitektur basis data ?


2. Jelaskan, gambarkan pengertian arsitektur tiga skema basis data?
3. Jelaskan secara singkat dan berikan contoh pengertian entitas,
atribut dan key atribut ?
4. Jelaskan secara singkat pengertian struktur fisik basis data ?
5. Jelaskan secara singkat bentuk normalisasi data bentuk BCNF ?
6. Jelaskan secara singkat bentuk normalisasi data bentuk 4 NF ?
7. Jelaskan secara singkat bentuk normalisasi data bentuk 5 NF ?
8. Jelaskan secara singkat Efek Normalisasi ?
41

Daftar Pustaka

Abdul Kadir. 2010. Membuat Aplikasi Laporan menggunakan PHP. Yogyakarta:


Andi Offset.
Anonim. (tt). Modeling with UseCase Diagram. http://staruml.sourceforge.net/
docs/user-guide(en)/ch05_1.html
Anonim. 2013. Modul Praktikum Basis Data 1. https://wajib1969.files.
wordpress.com/2013/10/modul-1-mengenal-database.pdf
Anonim. 2015. Membuat Query dalam Microsoft Access. http://mahir-
msoffice.blogspot.co.id/2015/07/cara-membuat-query-dalam-microsoft.htm
Anonim. 2015. Modul Praktikum Analisis Dan Perancangan Berorientasi
Objek. Palembang: Laboratorium Komputer Fakultas Ilmu Komputer
Universitas Sriwijaya.
Bernaridho I. Hutabarak. 2005. Konsep Pemrograman 1. Yogyakarta: Andi Ofsett
Dwiky Andika. 2015. Tipe Data Pada Database SQL. https://www.it-
jurnal.com/tipe-data-pada-database-sql/
Eko Widodo. 2011. Membuat Aplikasi Database Dengan Microsoft Access 2007.
http://ekowidodo.lecture.ub.ac.id/files/2011/09/PRAKTIKUM-ACCESS.pdf
Fairuz El Said. 2010. phttps://fairuzelsaid.wordpress.com/2010/07/03/sistem-
basis-data-latihan-query-menggunakan-sql-ms-acces/
Grogorius Agung. 2000. ASP Programming. Yogyakarta: Mitsaq
Haer Talib. 2002. Aplikasi Database Relasi dengan Microsoft Access 2002.
Jakarta: Elex Mediacomputindo.
Harfit Bernaya Putra. 2011. Kitab Suci Desktop Programmer. Yogyakarta:
Mediacom.
Ika Kusuma. 2016. Cloud Computing: Perbedaan Saas, Paas, Dan Iaas
(Kelebihan dan Kekurangan). https://dailyininformatics.wordpress.com/
2016/03/20/cloud-computing-perbedaan-saas-paas-dan-iaas-kelebihan-
dan-kekurangan/
Indrajani & Martin. 2007. Pemrograman berbasis objek dengan bahasa Java.
Jakarta: Elexmedia Computindo.
Jubile Enterprise. 2014. Buku Pintar Database dengan MS Access. Jakarta:
Elexmedia Computindo.
Karmilasari. Konsep pemrograman Berorientasi Objek.
Kasmin Arif. Mengenal Pemodelan Unified Modeling Language (UML).
http://kasminarif.blogspot.co.id/2014/11/mengenal-pemodelan-unified-
modeling.html
Lukman. 2017. http://carakode.com/struktur-dasar-html-dan-penjelasannya/
M.Hafizhul Afiq. 2015. Perintah DDL, DML dan DCL pada Mysql.
http://semukan.blogspot.co.id/2015/01/perintah-ddl-dml-dan-dcl-pada-
mysql.html
42

Madcoms. 2004. Panduan Lengkap Microsoft Access 2003. Yogyakarta: Andi


Offset.
Muh. Agus Alam. 2006. Belajar Sendiri Interaksi dan kolaborasi Access, Excel
dan Word. Jakarta: Elexmedia Computido.
MUKHAMAT JAFAR – 41813120014 Mata Kuliah : Rekayasa Perangkat Lunak
Dosen : Wachyu Hari Haji, S.Kom, Mm Universitas Mercubuana 2015
Rizky Irawan. 2014. Pengertian dan Contoh DDL,DML dan DCL, Pengertian dan
Contoh DDL,DML dan DCL. http://materibelajarrpl.blogspot.co.id/
2014/11/pengertian-dan-contoh-ddldml-dan-dcl.html
Rogerr S. Pressman. 2012. Software Engineering: A. Practitioner’s Approach, 7
ed, book 1. New York; MC Graw Hill.
Rogerr S. Pressman. 2012. Software Engineering: A. Practitioner’s Approach, 7
ed, book 2. New York; MC Graw Hill.
Verdi Yasin. 2012. Rekayasa Perangkat Lunak Berorientasi Objek. Mitra Wacana
Media. Jakarta
Yudi Agusta. 2011. StarUML. https://yudiagusta.files.wordpress.com
/2011/03/staruml.pdf

Anda mungkin juga menyukai