KATA PENGANTAR - neezasty.files.wordpress.com · 1 KATA PENGANTAR Kurikulum 2013 pada jenjang SMK...

122
1 KATA PENGANTAR Kurikulum 2013 pada jenjang SMK didesain dengan tujuan membekali siswa agar berkompeten pada paket keahlian masing-masing yang meliputi pengetahuan, ketrampilan dan juga sikap. Untuk mencapai tujuan tersebut diperlukan media pembelajaran yang sesuai dan tepat tujuan. Dari beberapa media yang dapat digunakan adalah berupa bahan ajar. Bahan ajar SMK selain dipakai sebagai sumber belajar bagi siswa juga dapat dijadikan sebagai pedoman dalam melakukan suatu kegiatan belajar. Untuk SMK, bahan ajar merupakan media informasi yang dirasakan efektif karena isinya yang lengkap, padat informasi dan mudah dipahami bagi siswa. Sehingga proses pembelajaran yang tepat guna akan dapat dicapai. Bahan ajar SMK ini disusun sebagai lanjutan yang lebih mendalam tentang ilmu Basis data pada keahlian Rekayasa Perangkat Lunak. Dalam bahan ajar ini akan dijelaskan teori dan praktek mengenai Desain Basis Data dan Pengolahan Basis Data. Diharapkan modul-modul ini digunakan sebagai sumber belajar pokok peserta pendidikan dan pelatihan (Diklat) Kejuruan khususnya SMK dalam mencapai standar kompetensi kerja yang diharapkan dunia kerja. Penyusun

Transcript of KATA PENGANTAR - neezasty.files.wordpress.com · 1 KATA PENGANTAR Kurikulum 2013 pada jenjang SMK...

Page 1: KATA PENGANTAR - neezasty.files.wordpress.com · 1 KATA PENGANTAR Kurikulum 2013 pada jenjang SMK didesain dengan tujuan membekali siswa agar berkompeten pada paket keahlian masing-masing

1

KATA PENGANTAR

Kurikulum 2013 pada jenjang SMK didesain dengan tujuan membekali siswa agar

berkompeten pada paket keahlian masing-masing yang meliputi pengetahuan, ketrampilan dan juga

sikap. Untuk mencapai tujuan tersebut diperlukan media pembelajaran yang sesuai dan tepat tujuan.

Dari beberapa media yang dapat digunakan adalah berupa bahan ajar. Bahan ajar SMK selain

dipakai sebagai sumber belajar bagi siswa juga dapat dijadikan sebagai pedoman dalam melakukan

suatu kegiatan belajar. Untuk SMK, bahan ajar merupakan media informasi yang dirasakan efektif

karena isinya yang lengkap, padat informasi dan mudah dipahami bagi siswa. Sehingga proses

pembelajaran yang tepat guna akan dapat dicapai.

Bahan ajar SMK ini disusun sebagai lanjutan yang lebih mendalam tentang ilmu Basis data

pada keahlian Rekayasa Perangkat Lunak. Dalam bahan ajar ini akan dijelaskan teori dan praktek

mengenai Desain Basis Data dan Pengolahan Basis Data. Diharapkan modul-modul ini digunakan

sebagai sumber belajar pokok peserta pendidikan dan pelatihan (Diklat) Kejuruan khususnya SMK

dalam mencapai standar kompetensi kerja yang diharapkan dunia kerja.

Penyusun

Page 2: KATA PENGANTAR - neezasty.files.wordpress.com · 1 KATA PENGANTAR Kurikulum 2013 pada jenjang SMK didesain dengan tujuan membekali siswa agar berkompeten pada paket keahlian masing-masing

2

DAFTAR ISI

Kata Pengantar .................................................................................................................... 1

Daftar Isi ............................................................................................................................. 2

Pendahuluan ........................................................................................................................ 6

Pembelajaran 1. Pengenalan Basis Data ....................................................................... 7

a. Tujuan Kegiatan Belajar ......................................................................................... 7

b. Indikator Pencapaian .............................................................................................. 7

c. Uraian Materi ....................................................................................................... 7

d. Aktivitas Pembelajaran ........................................................................................ 11

e. Latihan / Tugas ..................................................................................................... 11

f. Rangkuman ............................................................................................................ 11

Pembelajaran 2. Struktur Hirarki Basis Data Dan Arsitektur .................................. 12

a. Tujuan Kegiatan Belajar ......................................................................................... 12

b. Indikator Pencapaian .............................................................................................. 12

c. Uraian Materi ....................................................................................................... 12

d. Aktivitas Pembelajaran ........................................................................................ 25

e. Latihan / Tugas ..................................................................................................... 26

f. Rangkuman ............................................................................................................ 27

Pembelajaran 3. ERD (Entity Relationship Diagram) ................................................ 28

a. Tujuan Kegiatan Belajar ......................................................................................... 28

b. Indikator Pencapaian .............................................................................................. 28

c. Uraian Materi ....................................................................................................... 28

Page 3: KATA PENGANTAR - neezasty.files.wordpress.com · 1 KATA PENGANTAR Kurikulum 2013 pada jenjang SMK didesain dengan tujuan membekali siswa agar berkompeten pada paket keahlian masing-masing

3

d. Aktivitas Pembelajaran ........................................................................................ 33

e. Latihan / Tugas ..................................................................................................... 37

f. Rangkuman ............................................................................................................ 39

Pembelajaran 4. Relasi Kardinalitas pada ERD .......................................................... 40

a. Tujuan Kegiatan Belajar ......................................................................................... 40

b. Indikator Pencapaian .............................................................................................. 40

c. Uraian Materi ....................................................................................................... 40

d. Aktivitas Pembelajaran ........................................................................................ 43

e. Latihan / Tugas ..................................................................................................... 47

f. Rangkuman ............................................................................................................ 49

Pembelajaran 5. Normalisasi Basis Data ...................................................................... 50

a. Tujuan Kegiatan Belajar ......................................................................................... 50

b. Indikator Pencapaian .............................................................................................. 50

c. Uraian Materi ....................................................................................................... 50

d. Aktivitas Pembelajaran ........................................................................................ 61

e. Latihan / Tugas ..................................................................................................... 63

f. Rangkuman ............................................................................................................ 66

Pembelajaran 6. Sistem Manajemen Basis Data (DBMS) ........................................... 67

a. Tujuan Kegiatan Belajar ......................................................................................... 67

b. Indikator Pencapaian .............................................................................................. 67

c. Uraian Materi ....................................................................................................... 67

d. Aktivitas Pembelajaran ........................................................................................ 76

e. Latihan / Tugas ..................................................................................................... 76

f. Rangkuman ............................................................................................................ 78

Page 4: KATA PENGANTAR - neezasty.files.wordpress.com · 1 KATA PENGANTAR Kurikulum 2013 pada jenjang SMK didesain dengan tujuan membekali siswa agar berkompeten pada paket keahlian masing-masing

4

Pembelajaran 7. Basis Data Relational ......................................................................... 79

a. Tujuan Kegiatan Belajar ......................................................................................... 79

b. Indikator Pencapaian .............................................................................................. 79

c. Uraian Materi ....................................................................................................... 79

d. Aktivitas Pembelajaran ........................................................................................ 88

e. Latihan / Tugas ..................................................................................................... 89

f. Rangkuman ............................................................................................................ 90

Pembelajaran 8. SQL (Stuctured Query Language) .................................................... 91

a. Tujuan Kegiatan Belajar ......................................................................................... 91

b. Indikator Pencapaian .............................................................................................. 91

c. Uraian Materi ....................................................................................................... 91

d. Aktivitas Pembelajaran ........................................................................................ 101

e. Latihan / Tugas ..................................................................................................... 101

f. Rangkuman ............................................................................................................ 101

Pembelajaran 9. DDL (Data Definition Language) ...................................................... 102

a. Tujuan Kegiatan Belajar ......................................................................................... 102

b. Indikator Pencapaian .............................................................................................. 102

c. Uraian Materi ....................................................................................................... 102

d. Aktivitas Pembelajaran ........................................................................................ 105

e. Latihan / Tugas ..................................................................................................... 105

f. Rangkuman ............................................................................................................ 106

Pembelajaran 10. DML (Data Manipulation Language)............................................. 107

a. Tujuan Kegiatan Belajar ......................................................................................... 107

b. Indikator Pencapaian .............................................................................................. 107

Page 5: KATA PENGANTAR - neezasty.files.wordpress.com · 1 KATA PENGANTAR Kurikulum 2013 pada jenjang SMK didesain dengan tujuan membekali siswa agar berkompeten pada paket keahlian masing-masing

5

c. Uraian Materi ....................................................................................................... 107

d. Aktivitas Pembelajaran ........................................................................................ 111

e. Latihan / Tugas ..................................................................................................... 115

f. Rangkuman ............................................................................................................ 116

Pembelajaran 11. DCL (Data Control Language) ....................................................... 117

a. Tujuan Kegiatan Belajar ......................................................................................... 117

b. Indikator Pencapaian .............................................................................................. 117

c. Uraian Materi ....................................................................................................... 117

d. Aktivitas Pembelajaran ........................................................................................ 118

e. Latihan / Tugas ..................................................................................................... 118

f. Rangkuman ............................................................................................................ 119

Daftar Pustaka ..................................................................................................................... 120

Glosarium ............................................................................................................................ 121

Page 6: KATA PENGANTAR - neezasty.files.wordpress.com · 1 KATA PENGANTAR Kurikulum 2013 pada jenjang SMK didesain dengan tujuan membekali siswa agar berkompeten pada paket keahlian masing-masing

6

PENDAHULUAN

Kenapa harus menggunakan Basis Data (Database)?

Kebanyakan aplikasi yang dibuat digunakan untuk menyimpan dan melihat data. Data

adalah bagian terkecil yang digunakan sebagai penyusun informasi. Karena fungsi yang

sangat penting dari data agar dapat digunakan sebagai sumber informasi yang benar.

Maka perlu dibuat sebuaha rumah data yang baik dan benar. Rumah data inilah yang

disebut dengan DATABASE.

Desain database yang baik akan membuat database tersebut dapat berjalan dengan baik

dan sesuai dengan harapan ketika database dirancang dan dibuat. Keterampilan

membuat database akan sangat menentukan berhasil tidaknya aplikasi dibuat. Database

adalah jantung dari aplikasi.

Proses pembuatan aplikasi semua selalu dimulai dari desain database yang benar dulu

baru kemudian ke desain tampilan (User Interface), baru kemudian ke coding atau

pembuatan kode program. Dalam modul pembelajaran kali ini, kita akan belajar tentang

desain basis data dan perancangan serta implementasi pengolahan data mengunakan

basis data yang telah tersedia. Sehingga dalam proses belajar akan lebih mudah dengan

dilengkapi materi, contoh kasus, latihan soal dan praktikum sekaligus.

Page 7: KATA PENGANTAR - neezasty.files.wordpress.com · 1 KATA PENGANTAR Kurikulum 2013 pada jenjang SMK didesain dengan tujuan membekali siswa agar berkompeten pada paket keahlian masing-masing

7

PEMBELAJARAN 1:

PENGENALAN BASIS DATA (DATABASE)

A. Tujuan Pembelajaran

Setelah mengikuti kegiatan belajar ini, diharapkan bahwa:

Melalui peserta didik dapat mengetahui definisi dan gambaran sebuah basis

data dalam dunia IT.

B. Indikator pencapaian kompetensi

Mengetahui definisi dan gambaran basis data

.

C. Uraian materi

1. Definisi Basis Data

Basis data (database) merupakan kumpulan dari data yang saling berhubungan satu

dengan yang lainnya, tersimpan dalam perangkat keras komputer dan digunakan perangkat

lunak untuk memanipulasinya. Basis data merupakan salah satu komponen utama dalam

sistem informasi, karena merupakan basis dalam penyediaan informasi bagi para pemakai

(Fathansyah, 1999; Post, 1999).

Jika dibayangkan, basis data mirip dengan lemari di ruang administrasi sekolah yang

menyimpan berbagai arsip. Masing-masing jenis arsip dikelompokkan, diatur dan disimpan

pada tempat yang telah ditentukan. Sehingga akan ada kelompok arsip siswa, arsip guru,

arsip mata pelajaran, arsip keuangan, dan lain-lain. Perbedaannya hanya pada media

penyimpanannya. Kalau lemari arsip menggunakan lemari dari kayu, besi atau plastik,

sedangkan basis data menggunakan media penyimpan elektronis seperti disk (hard disc,

CD, atau tape). Gambar 1.1 memberikan ilustrasi tentang kesamaan lemari arsip dan basis

data.

Satu hal penting yang harus diperhatikan, basis data bukan hanya sekedar

penyimpanan data secara elektronis. Tidak semua penyimpanan data elektronis bisa disebut

basis data. Apabila penyimpanan itu tidak menggunakan prinsip pengaturan, pemisahan

atau pengorganisasian maka kita tidak dapat menyebut penyimpanan data tersebut sebagai

Page 8: KATA PENGANTAR - neezasty.files.wordpress.com · 1 KATA PENGANTAR Kurikulum 2013 pada jenjang SMK didesain dengan tujuan membekali siswa agar berkompeten pada paket keahlian masing-masing

8

basis data. Pada Gambar 1.1 terlihat penerapan prinsip pengaturan, pengorganisasian atau

pemisahan, baik pada lemari arsip atau pada basis data.

Gambar 1.1. Lemari arsip dan basis data.

Prinsip utama dalam basis data adalah konsep independensi data yaitu pemisahan

data dari program aplikasinya (Lewis et al., 2002; Post, 1999). Sedangkan tujuan utama

dalam basis data adalah membantu pengguna dalam abstraksi suatu sistem. Ada tiga level

abstraksi yang biasanya digunakan yaitu physical level, conceptual level dan view level

(Gambar 10.3). Physical level menunjukkan bagaimana data akan disimpan. Conceptual

level berkaitan dengan data apa yang akan disimpan dan bagaimana hubungan antar data

tersebut. View level merupakan level tertinggi yang menjelaskan bagian-bagian basis data

pada pengguna tertentu (Ramakrishnan and Gehrke, 2000).

Page 9: KATA PENGANTAR - neezasty.files.wordpress.com · 1 KATA PENGANTAR Kurikulum 2013 pada jenjang SMK didesain dengan tujuan membekali siswa agar berkompeten pada paket keahlian masing-masing

9

Gambar 1.2. Tingkatan dalam abstaksi data (Lewis et al., 2002).

Basis data mempunyai beberapa kriteria penting, yaitu :

1) Bersifat data oriented dan bukan program oriented.

2) Dapat digunakan oleh beberapa program aplikasi tanpa perlu mengubah basis

datanya.

3) Dapat dikembangkan dengan mudah, baik volume maupun strukturnya.

4) Dapat memenuhi kebutuhan sistem-sistem baru secara mudah

5) Dapat digunakan dengan cara-cara yang berbeda.

Secara bertingkat, operasi dasar basis data dapat digambarkan dalam skema pada

Gambar 1.3. Operasi-operasi tersebut meliputi:

a) Pembuatan basis data baru (create database). Operasi ini sama dengan

pembuatan atau pembelian lemari arsip yang baru.

b) Penghapusan basis data (drop database). Operasi ini sama dengan pengrusakan

atau penghancuran lemari arsip.

c) Pembuatan tabel baru (create table). Operasi ini sama dengan penambahan

kelompok arsip baru. Operasi ini baru bisa dijalankan jika basis data telah

dibuat.

d) Penghapusan tabel (drop table). Operasi ini sama dengan pengrusakan

kelompok arsip lama. Operasi ini baru bisa dijalankan jika tabel telah ada pada

suatu basis data.

Page 10: KATA PENGANTAR - neezasty.files.wordpress.com · 1 KATA PENGANTAR Kurikulum 2013 pada jenjang SMK didesain dengan tujuan membekali siswa agar berkompeten pada paket keahlian masing-masing

10

Gambar 1.3. Operasi-operasi dasar pada basis data.

e) Pengisian atau penambahan data baru (insert data) pada suatu tabel. Operasi ini

mirip dengan penambahan lembaran arsip baru pada kelompok arsip. Operasi ini

baru bias dijalankan jika tabel telah dibuat.

f) Pengambilan data dari suatu tabel (retrieve data). Operasi ini mirip dengan

pencarian lembaran arsip yang tersimpan dalam kelompok arsip.

g) Pengubahan data dari suatu tabel (update data). Operasi ini mirip dengan

perbaikan isi lembaran arsip dari suatu kelompok arsip

h) Penghapusan data dari suatu tabel (delete). Operasi ini mirip dengan

penghapusan sebuah lembaran arsip dari suatu kelompok arsip.

Basis data dibangun untuk memenuhi tujuan dalam pengorganisasian data, yang

antara lain sebagai berikut :

1. Efisiensi meliputi kecepatan (speed), ruang simpan (space) dan keakuratan (accuracy).

2. Menangani data dalam jumlah besar.

3. Kebersamaan pemakaian (Shareability).

4. Meniadakan duplikasi dan inkonsistensi data.

Page 11: KATA PENGANTAR - neezasty.files.wordpress.com · 1 KATA PENGANTAR Kurikulum 2013 pada jenjang SMK didesain dengan tujuan membekali siswa agar berkompeten pada paket keahlian masing-masing

11

D. AKTIVITAS PEMBELAJARAN

Dalam kegiatan ini peserta didik akan melakukan analisis terhadap contoh basis data

dalam kehidupan sehari-hari. Bentuk kelompok diskusi setiap kelompok terdiri dari 3-4

orang. Bacalah seluruh langkah dibawah ini kemudian lakukan dengan cermat dan teliti.

1. Baca dan Amati uraian materi diatas dan carilah sumber bacaan lain yang relevan

melalui media internet.

2. Analisalah contoh-contoh penerapan basis data dalam kehidupan sehari-hari

3. Diskusi dan komunikasikan hasilnya dalam kelompok dan buatlah kesimpulan.

4. Buatlah Laporan dan komunikasikan hasil laporan dan pembahasan dengan tutor.

E. LATIHAN / TUGAS

1. Berkunjunglah ke perpustakaan sekolah, kemudian buatlah pengamatan singkat. Bu-

atlah catatan untuk menentukan siapa dan apa yang terlibat dalam kegiatan perpustakaan

sekolah. Cermatilah mana yang bisa digolongkan sebagai basis data, table, field dan

record.

2. Dari hasil kegiatan no. 1 kemudian buatlah tabel-tabel dalam bentuk laporan kegiatan.

F. RANGKUMAN

Basis data (database) merupakan kumpulan dari data yang saling berhubungan satu dengan

yang lainnya, tersimpan dalam perangkat keras komputer dan digunakan perangkat lunak

untuk memanipulasinya.

Operasi dasar basis data meliputi pembuatan basis data baru, penghapusan basis data,

pembuatan table, penghapusan table, mengubahan table, pengisian atau penambahan data

baru, pengambilan data, pengubahan data dan penghapusan data.

Page 12: KATA PENGANTAR - neezasty.files.wordpress.com · 1 KATA PENGANTAR Kurikulum 2013 pada jenjang SMK didesain dengan tujuan membekali siswa agar berkompeten pada paket keahlian masing-masing

12

PEMBELAJARAN 2:

STRUKTUR HIRARKI BASIS DATA DAN ARSITEKTUR

A. Tujuan Pembelajaran

Setelah mengikuti kegiatan belajar ini, diharapkan bahwa:

Melalui observasi peserta didik dapat menganalisis ragam model struktur

basis data dengan tepat

Melalui observasi peserta didik dapat menganalisis ragam bentuk arsitektur

basis data dengan benar

B. Indikator pencapaian kompetensi

Menganalisis ragam model struktur dan hirarki basis data dalam bentuk diagram

Menganalisis bentuk arsitektur basis data

.

C. Uraian materi

1. Definisi Struktur Basis Data

Struktur basis data merupakan serangkaian pengetahuan tentang pemodelan data.

Pengetahuan tentang File, table, field, record indeks, abstraksi data dan serangkaian

konsep yang digunakan untuk membuat deskripsi struktur basis data. Melalui deskripsi

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.

• 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.

Page 13: KATA PENGANTAR - neezasty.files.wordpress.com · 1 KATA PENGANTAR Kurikulum 2013 pada jenjang SMK didesain dengan tujuan membekali siswa agar berkompeten pada paket keahlian masing-masing

13

Gambar 2.1 Struktur hirarki basis data

2. 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, merupakan

sejumlah konsep yang digunakan untuk membuat deskripsi struktur basis data. Melalui

deskripsi struktur basis data, dapat ditentukan jenis data dan hubungannya dengan data

lainnya.

Skema basis data merupakan deskripsi dari basis data yang spesifikasinya

ditentukan dalam tahap perancangan. Skema ini digunakan untuk memisahkan antara

fisik basis data dan program aplikasi pemakai. Penggambaran skema basis data biasanya

ditampilkan dalam diagram yang berisi sebagian detail data dari deskripsi 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 deskripsi

struktur penyimpanan basis data, menggunakan model data fisikal.

2. Level Konseptual (skema konseptual), memuat deskripsi struktur basis data

secara keseluruhan untuk semua pemakai. Level ini memuat deskripsi tentang

entity, atribut, relasi dan konstrain tanpa memuat deskripsi 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.

Page 14: KATA PENGANTAR - neezasty.files.wordpress.com · 1 KATA PENGANTAR Kurikulum 2013 pada jenjang SMK didesain dengan tujuan membekali siswa agar berkompeten pada paket keahlian masing-masing

14

Gambar 2.2 Arsitektur tiga-skema sistem manajemen basis data

3. Pemodelan data

Pemodelan data merupakan sarana untuk melakukan abstraksi data, sejumlah

konsep untuk membuat deskripsi stuktur basis data. Kebanyakan model data memuat

spesifikasi untuk operasi dasar (basic operation) dalam pengaksesan dan pembaharuan

data. Pada perkembangan terakhir dikenal dengan istilah tabiat data (data behavior) pada

pemrograman berorientasi obyek. Terdapat sejumlah cara dalam merepresentasikan

model untuk perancangan basis data. Secara umum pemodelan basis data dapat

dikelompokkan menjadi dua yaitu:

1. Object based logical model. Dalam pemodelan ini struktur atau hirarki basis data

diilustrasikan berdasarkan obyek.. Model ini meliputi: 1) Model keterhubungan

entitas (Entity Relationalship Model atau ERD).

2. Model Data Semantik (Semantic Data Model). 2) Model data Fungsional (Function

Data Model).

3. 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).

Page 15: KATA PENGANTAR - neezasty.files.wordpress.com · 1 KATA PENGANTAR Kurikulum 2013 pada jenjang SMK didesain dengan tujuan membekali siswa agar berkompeten pada paket keahlian masing-masing

15

4. Model keterhubungan entitas (Entity Relationalship Model/ERD)

Diagram relasi entitas atau entity-relationship diagram (ERD) adalah suatu diagram

dalam bentuk gambar atau simbol yang mengidentifikasi tipe dari entitas di dalam suatu

sistem yang diuraikan dalam data dengan atributnya, dan menjelaskan hubungan atau

relasi diantara entitas tersebut. ERD merupakan model jaringan yang menggunakan

susunan data yang disimpan dalam sistem secara abstrak. ERD berupa model data

konseptual, yang merepresentasikan data dalam suatu organisasi. ERD menekankan pada

struktur dan relationship data. ERD digunakan oleh profesional sistem untuk

berkomunikasi dengan pemakai eksekutif tingkat tinggi dalam perusahaan atau

organisasi yang tidak tertarik pada pelaksanaan operasi sistem sehari-hari, namun lebih

menekankan kepada beberapa hal yaitu:

Data apa saja yang diperlukan untuk bisnis mereka?

Bagaimana data tersebut berelasi dengan data lainnya?

Siapa saja yang diperbolehkan mengakses data tersebut?

Gambar 1.3 Contoh Entity Relationship Diagram

5. Model Hirarki Basis Data (Hierarchical Model)

Dalam model ini data disusun menurut struktur pohon. Puncak dari herarki disebut

dengan root sedangkan entitas atau interface di bawahnya dikenal sebagai induk

(parent). Entitas induk mempunyai beberapa sub entitsas yang disebut anak (child).

Entitas dalam model hirarki dilambangkan dengan empat persegi panjang. Sedangkan

Page 16: KATA PENGANTAR - neezasty.files.wordpress.com · 1 KATA PENGANTAR Kurikulum 2013 pada jenjang SMK didesain dengan tujuan membekali siswa agar berkompeten pada paket keahlian masing-masing

16

relasi atau hubungan dengan entitas lain dinotasikan dengan garis. Gambar dibawah ini

menjelaskan salah satu contoh model hirarki basis data level konseptual sistem

perkuliahan.

Gambar 2.4 Model Herarki Sistem Perkuliahan (Level Konseptual)

Dari gambar struktur hirarki basis data diatas dapat dibuat struktur pengkodean

record data (level fisik) untuk setiap entitas beserta hubungan antar entitas. Susuan

herarkhi ditujukkan dengan tanda anak panah pada data (field) yang digunakan sebagai

kunci data (primary key, daerah diarsir). Relasi dalam herarkhi model hubungan antar

entitas dinyatakan dalam satu-banyak (one to many) atau satu – satu (one to one).

Kelemahan hararkhi model adalah tidak dapat dilakukan pencarian data pada field

atribut. Misalnya tidak dapat menampilkan data pda tabel mata kuliah berdasarkan

jum_SKS, karena jum_SKS bukan kunci data. Masalah ini dapat diatasi dengan

mengubah struktur data dengan memberi hubungan khusus (misalnya dengan variabel

pointer).

Gambar 2.5 Struktur pengkodean record data (model level fisik)

Page 17: KATA PENGANTAR - neezasty.files.wordpress.com · 1 KATA PENGANTAR Kurikulum 2013 pada jenjang SMK didesain dengan tujuan membekali siswa agar berkompeten pada paket keahlian masing-masing

17

6. Model Jaringan Basis Data (Network Model).

Dalam model jaringan entitas induk maupun anak dapat terdiri lebih dari dua

entitas. Model ini merupakan pengembangan model hirarki. Relasi antara entitas dalam

network model adalah satu ke satu (one to one) atau satu ke banyak (one to many).

Gambar 2.6 Model struktur jaringan basis data

Dalam network data model tidak diperbolehkan terdapat relasi banyak ke banyak

(many to many). Untuk membuat relasi many to many dalam network model

dibutuhkan entitas perantara yang disebut sebagai rekaman silang (intersection record).

Dari gambar 1.6 entitas registrasi adalah merupakan entitas perantara antara etitas

mahasiswa dengan entitas mata kuliah.

Gambar 2.7 Organisasi record data pada model jaringan

Page 18: KATA PENGANTAR - neezasty.files.wordpress.com · 1 KATA PENGANTAR Kurikulum 2013 pada jenjang SMK didesain dengan tujuan membekali siswa agar berkompeten pada paket keahlian masing-masing

18

7. Model data Relational

Model Data Relasional adalah suatu model basis data yang menggunakan tabel

dua dimensi, yang terdiri atas baris dan kolom untuk menggambarkan sebuah berkas

data. Model ini menunjukkan cara mengelola atau mengorganisasikan data secara fisik

dalam memory sekunder. Hal in akan berdampak pula pada bagaimana pengguna

mengelompokkan data dan membentuk keseluruhan data yang terkait dalam sistem

yang kita buat.

Contoh tabel dan terhubungannya Tabel Siswa

NIS Nama Alamat

10296832 Nurhayati Jakarta

10296126 Astuti Jakarta

31296500 Budi Depok

41296525 Prananingrum Bogor

50096487 Pipit Bekasi

21196353 Quraish Bogor

Tabel Mata pelajaran

Kode Nama Mata pelajaran SKS

KK021 P. Basis Data 2

KD132 SIM 3

KU122 Pancasila 2

Tabel NILAI

NIS Kode MID

FINAL

10296832 KK021 60 75

10296126 KD132 70 90

31296500 KK021 55 40

41296525 KU122 90 80

21196353 KU122 75 75

50095487 KD132 80 0

10296832 KD132 40 30

Page 19: KATA PENGANTAR - neezasty.files.wordpress.com · 1 KATA PENGANTAR Kurikulum 2013 pada jenjang SMK didesain dengan tujuan membekali siswa agar berkompeten pada paket keahlian masing-masing

19

8. Arsitektur Basis Data

Arsitektur aplikasi basis data menjelaskan rancangan dasar aplikasi basis data yang

akan dibangun. Arsitektur basis data menggambarkan diagram interaksi antara komponen-

komponen penyusun sistem manajemen basis data. Komponen-komponen tersebut

meliputi perangkat hardware, software, jaringan komputer, dan pengguna. Berdasarkan

arsitekturnya aplikasi sistem manajemen basis data (SMBD) dibedakan menjadi beberapa

macam antara lain adalah sebagai berikut:

a. Teleprocessing Arsitektur

Teleprocessing adalah suatu arsitektur tradisional untuk multi-user system,

dimana sebuah CPU terhubung dengan beberapa workstation. Pada Arsitektur ini

semua pemrosesan dikerjakan dalam batasan fisik komputer yang sama.

Gambar 2.8. Arsitektur teleprocessing

Terminal untuk pemakai berjenis 'dumb', yang tidak dapat berfungsi sendiri dan

masing-masing dihubungkan ke komputer pusat. Terminal-terminal tersebut

mengirimkan pesan melalui subsistem pengontrol komunikasi pada sistem operasi ke

program aplikasi, yang bergantian menggunakan layanan DBMS. Dengan cara yang

sama, pesan dikembalikan ke terminal pemakai. Arsitektur ini menempatkan beban

yang besar pada komputer pusat yang tidak hanya menjalankan program aplikasi tetapi

juga harus menyelesaikan sejumlah pekerjaan pada terminal seperti format data untuk

tampilan di monitor.

Page 20: KATA PENGANTAR - neezasty.files.wordpress.com · 1 KATA PENGANTAR Kurikulum 2013 pada jenjang SMK didesain dengan tujuan membekali siswa agar berkompeten pada paket keahlian masing-masing

20

b. Centralized Database manajemen Sistem (CDBMS)

Pada sistem ini semua proses utama dan fungsi sistem manajemen basis data

seperti user application programs dan user interface programs berada secara terpusat

di satu komputer berkecepatan dan kapasitas tinggi (main frame). Pengguna

mengakses basis data menggunakan terminal komputer. Pada arsitektur ini

digunakan komputer main frame yg menyediakan semua proses utama seperti

fungsinya pada DBMS (user application programs & user interface programs).

Bentuk arsitektur terpusat ini menggambarkan pengaksesan terminal-terminal

komputer (client) pada komputer server, berupa display informasi dan kontrol saja,

karena pada terminal komputer tidak memungkinkan memiliki resource yang lebih.

Seiring perkembangan teknologi dan turunnya harga hardware, banyak terminal user

digantikan dengan PC, akan tetapi DBMS masih ditempatkan terpusat (Application

program execution & user interface processing ditempatkan pada satu mesin).

Gambar dibawah ini menjelaskan Arsitektur Centralized Database manajemen

Sistem (CDBMS)

Gambar 2.9. Arsitektur CDBMS

c. Distributed Database manajemen Sistem (DDBMS)

DDBMS memiliki satu logikal basis data yang dibagi ke dalam beberapa

fragment. Dimana setiap fragment disimpan pada satu atau lebih komputer dibawah

kontrol dari DBMS yang terpisah dengan mengkoneksi komputer menggunakan

jaringan komunikasi. DDBMS memungkinkan direplikasi dan alokasi penyimpanan

disembunyikan sehingga tidak diketahui pengguna. Pada sistem ini data disimpan

Page 21: KATA PENGANTAR - neezasty.files.wordpress.com · 1 KATA PENGANTAR Kurikulum 2013 pada jenjang SMK didesain dengan tujuan membekali siswa agar berkompeten pada paket keahlian masing-masing

21

pada beberapa tempat (site), setiap tempat diatur dengan suatu DBMS yang dapat

berjalan secara independent. Perangkat lunak dalam sistem ini akan mengatur

pendistribusian data secara transparan. Setiap site memiliki kemampuan untuk

mengakses permintaan pengguna pada data lokal dan juga mampu untuk memproses

data yang disimpan pada komputer lain yang terhubung dengan jaringan. Pengguna

mengakses basis data terdistribusi dengan menggunakan dua aplikasi yaitu aplikasi

lokal dan aplikasi global,

Gambar 2.10 Arsitektur DDMS

d. Client-Server Architecture

Konsep arsitektur client/server mengasumsikan sebuah kerangka dasar (framework)

yang terdiri atas banyak PC yang terhubung melalui LAN beserta tipe-tipe jaringan komputer

lainnya. Suatu Client adalah mesin user yang menyediakan kemampuan user interface dan

local processing. Suatu Server adalah mesin yang menyediakan berbagai service ke mesin

client (file access, printing, archiving, or database access). Ada kemungkinan suatu mesin

hanya menginstall software client saja, yang lain software server, atau bahkan keduanya pada

satu mesin (seperti pada gambar physical client/server sebelumnya). Dua arsitektur DBMS

yang mendasari framework client/server ialah two-tier client/server dan three-tier

client/server.

Page 22: KATA PENGANTAR - neezasty.files.wordpress.com · 1 KATA PENGANTAR Kurikulum 2013 pada jenjang SMK didesain dengan tujuan membekali siswa agar berkompeten pada paket keahlian masing-masing

22

Gambar 2.11. Arsitektur Basis Data Client server

Gambar 1.12. Arsitektur two tier client server

Three Tier Architecture merupakan inovasi dari arsitektur client-server. Pada arsitektur

Three-tier ini terdapat application server yang berdiri di antara client dan database server.

Contoh dari application server adalah IIS (Internet Information Services), WebSphere, dan

sebagainya. Arsitektur ini memisahkan antara logika aplikasi dari manajemen data, yang

meliputi:

1. Presentation Tier (Client) Berisi interface natural yang dibutuhkan user untuk membuat

request, menyediakan input dan melihat hasil. (GUI)

2. Middle Tier (Application Layer/Web Server) Berisi logika aplikasi untuk dieksekusi,

berbagai macam kode program (C++, Java, dll) sebagai proses bisnis logic yang

kompleks. (Application Programs, Web Pages).

3. Data Management Tier (Database Server) Berisi DBMS.

Page 23: KATA PENGANTAR - neezasty.files.wordpress.com · 1 KATA PENGANTAR Kurikulum 2013 pada jenjang SMK didesain dengan tujuan membekali siswa agar berkompeten pada paket keahlian masing-masing

23

Gambar 2.13. Aarsitektur three-tier client server

e. Arsitektur N-tier atau multi tier

Istilah arsitektur ini muncul karena dalam implementasi aplikasi basis data

dimungkinkan suatu aristektur aplikasi terdiri dari banyak tier. Salah satu contoh aplikasi basis

data yang menggunakan arsitektur ini ialah situs amazon .com, dimana pelanggan internet

dapat memesan buku secara online. Pelanggan dapat melihat katalog buku amazon.com yang

sebenarnya ada pada database amazon.com. Jika pelanggan ingin memesan salah satu buku,

maka pelanggan tersebut perlu memasukkan informasi mengenai dirinya dan yang terlebih

penting adalah data mengenai kartu kreditnya. Untuk dapat memesan buku data kartu kredit

pelanggan tersebut harus divalidasi terlebih dahulu: seperti kode PIN, masa berlaku kartu,

limit kredit. Setelah dinyatakan valid maka pelanggan dapat melakukan transaksi pemesanan

buku.

Page 24: KATA PENGANTAR - neezasty.files.wordpress.com · 1 KATA PENGANTAR Kurikulum 2013 pada jenjang SMK didesain dengan tujuan membekali siswa agar berkompeten pada paket keahlian masing-masing

24

Gambar 2.14. Arstektur N-Tier client server

Gambar 2.15. Arsitektur basis data amazon.com

Page 25: KATA PENGANTAR - neezasty.files.wordpress.com · 1 KATA PENGANTAR Kurikulum 2013 pada jenjang SMK didesain dengan tujuan membekali siswa agar berkompeten pada paket keahlian masing-masing

25

G. Aktivitas Pembelajaran

Dalam kegiatan ini peserta didik akan melakukan analisis terhadap ragam pemodelan

struktur basis data. Bentuk kelompok diskusi setiap kelompok terdiri dari 3-4 orang. Bacalah

seluruh langkah dibawah ini kemudian lakukan dengan cermat dan teliti.

1. Baca dan Amati uraian materi diatas dan carilah sumber bacaan lain yang relevan

melalui media internet.

2. Analisalah ragam pemodelan struktur basis data yang meliputi antara lain E/R

digram (ERD), semantic data model, functional data model, Relational Model,

Hierarchical Model dan Network Mode. Tentukan minimal Lima kriteria atau

parameter yang dijadikan dasar untuk menganalisis model struktur basis data

tersebut. (LK 2.1)

3. Tuliskan deskrepsi singkat dan contoh diagram untuk functional model, dan semantic

data model (LK 2.2)

4. Diskusi dan komunikasikan hasilnya dalam kelompok dan buatlah kesimpulan.

5. Buatlah Laporan dan komunikasikan hasil laporan dan pembahasan dengan tutor.

Tabel Lembar Kerja (LK 2.1) Analisis Ragam Model Struktur Basis Data

Kriteria

Model

Jenis Model Level (Tiga Skema)

Simbol

,

notasi, komponen

……

………..

Hierarchical

Model

Network

Model

ER Model

Relational

Model

functional

data model

semantic data

model

Page 26: KATA PENGANTAR - neezasty.files.wordpress.com · 1 KATA PENGANTAR Kurikulum 2013 pada jenjang SMK didesain dengan tujuan membekali siswa agar berkompeten pada paket keahlian masing-masing

26

H. Latihan

1. Suatu model data yang merupakan himpunan data dan prosedur dalam relasi yang

menjelaskan hubungan logis antar data dalam suatu sistem basis data, model tersebut

meliputi entity relationship model, semantic data model, function model, binary model

dan infological model. Model tersebut adalah:

a) Model data berbasis Obyek

b) Model data berbasis record

c) Model data secara fisik

d) Model data secara konsep

2. Suatu Level dalam arsitektur tiga schema basis data yang memuat deskripsi struktur

basis data secara keseluruhan untuk semua pemakai, memuat deskripsi tentang entity,

atribut, relasi dan konstrain tanpa memuat deskripsi data secara detail adalah . . . . . .

a) Level/skema Internal

b) Level/skema konseptual

c) Level/skema eksternal

d) Level/skema Modular

3. Suatu model data yang memiliki struktur pohon dan hubungan bertingkat, model ini

terdiri dari beberapa node (filed) yang berisi rincian data agregat data, dan record. Field-

fieldnya hanya memiliki satu buah induk (parent), masing-masing parent memiliki

banyak child (anak) adalah . . . . . .

a) Entity Relationship Model

b) Semantic Data Model

c) Relational Model

d) Hierarchi Model

Page 27: KATA PENGANTAR - neezasty.files.wordpress.com · 1 KATA PENGANTAR Kurikulum 2013 pada jenjang SMK didesain dengan tujuan membekali siswa agar berkompeten pada paket keahlian masing-masing

27

I. Rangkuman

Struktur basis data merupakan serangkaian pengetahuan tentang, file, table, field,

record indeks, abstraksi data adalah serangkaian konsep yang digunakan untuk membuat

deskripsi basis data. Struktur basis data menitik beratkan pada berbagai ragam pemodelan

data yang menggambarkan tentang obyek-obyek basis data, jenis dat, hubungan dan

konstrain data yang ditangani. Secara umum pemodelan basis data dikelompokkan

menjadi dua yaitu Object based logical model dan Record-based logical model. 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 Data Semantik (Semantic Data Model). 2)

Model data Fungsional (Function Data Model). 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).

Arsitektur aplikasi basis data menjelaskan rancangan dasar aplikasi basis data yang

akan dibangun. Arsitektur basis data menggambarkan diagram interaksi antara

komponen-komponen penyusun sistem manajemen basis data. Beberapa ragam jenis

arsitektur aplikasi SMBD antar lain ialah: CDMS, DDMS, Arsitektur Teleprocessing,

Arsitektur File-Server Architecture. Arsitektur Singgle tier, Arsitektur two-tier

client/server, Arsitektur three-tier client/server, Arsitektur N-tier client/server, Paralel

arsitektur.

Page 28: KATA PENGANTAR - neezasty.files.wordpress.com · 1 KATA PENGANTAR Kurikulum 2013 pada jenjang SMK didesain dengan tujuan membekali siswa agar berkompeten pada paket keahlian masing-masing

28

PEMBELAJARAN 3:

ERD (ENTITY RELATIONSHIP DIAGRAM)

A. Tujuan Pembelajaran

Setelah mengikuti kegiatan belajar ini diharapkan, melalui praktikum peserta didik dapat;

Membuat ilustrasi atau deskripsi sistem basis data dengan benar.

Menemukan entitas dan attribute sesuai ilustrasi sistem basis data.

B. Indikator Pencapaian Kompetensi

Membuat Entity Relationship Diagram.

C. Uraian materi

1. Definisi ERD

Diagram relasi entitas atau entity-relationship diagram (ERD) adalah suatu diagram

dalam bentuk gambar atau simbol yang mengidentifikasi tipe dari entitas di dalam suatu

sistem yang diuraikan dalam data dengan atributnya, dan menjelaskan hubungan atau relasi

diantara entitas tersebut. ERD merupakan model jaringan yang menggunakan susunan data

yang disimpan dalam sistem secara abstrak. ERD berupa model data konseptual yang

merepresentasikan data, karakteristik data (atribut-atributnya) dan relasi dua atau lebih data

dalam suatu organisasi sehingga membentuk basis data relasional. ERD menekankan pada

struktur dan relationship data.

2. Komponen-Komponen ERD

Untuk menggambarkan ERD yang mengilustrasikan relasi dua atau lebih data dalam

suatu sistem basis data digunakan beberapa komponen. Komponen-komponen tersebut ialah

Entitas, Atribute dan Relasi

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:

Page 29: KATA PENGANTAR - neezasty.files.wordpress.com · 1 KATA PENGANTAR Kurikulum 2013 pada jenjang SMK didesain dengan tujuan membekali siswa agar berkompeten pada paket keahlian masing-masing

29

• 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 pegawai 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

Gambar 3.1 Notasi entitas kuat (k2otak 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 atau 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 dapat

dibagi-bagi lagi menjadi atribut yang lebih kecil. Contohnya adalah atribut JenisKel pada

entitas pegawai. Gambar dibawah ini menjelaskan simbol atau notasi Simple Attribute

Gambar 3.2 Gambar simple attribute (JenisKel, NmDepan, Inisial, NmBlk) dan

composite attribute (Nama)

Page 30: KATA PENGANTAR - neezasty.files.wordpress.com · 1 KATA PENGANTAR Kurikulum 2013 pada jenjang SMK didesain dengan tujuan membekali siswa agar berkompeten pada paket keahlian masing-masing

30

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. Gambar diatasmenjelaskan simbol atau

notasi composite attribute. 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. Gambar diatas menjelaskan

simbol atau notasi Multi Value attribute. Gambar diatas menjelaskan simbol atau notasi

Single value Attribute

Single value Atribute (NmDepan) dan multivalue Atribute (Lokasi)

Derived Attribute atau Atribut 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.

Derived Attribute Jumlah Pegawai (JmlPeawai)

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

Page 31: KATA PENGANTAR - neezasty.files.wordpress.com · 1 KATA PENGANTAR Kurikulum 2013 pada jenjang SMK didesain dengan tujuan membekali siswa agar berkompeten pada paket keahlian masing-masing

31

Tabel dibawah ini menjelaskan beberapa contoh nama entitas beserta nama atribut-

atributnya.

Tabel 3.1. Daftar entitas dan atributnya

Nama entitas Nama Atribute

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. Gambar diatas menjelaskan simbol atau notasi

primary key.

Gambar 3.3 Notasi Primary Key Attribute (NoKTP)

Page 32: KATA PENGANTAR - neezasty.files.wordpress.com · 1 KATA PENGANTAR Kurikulum 2013 pada jenjang SMK didesain dengan tujuan membekali siswa agar berkompeten pada paket keahlian masing-masing

32

Gambar 3.4 Struktur entitas pegawai beserta atributnya

3. Prosedur Merancang ERD

ER diagram digunakan oleh profesional sistem untuk berkomunikasi dengan pemakai

eksekutif tingkat tinggi dalam perusahaan atau organisasi yang tidak tertarik pada pelaksanaan

operasi sistem sehari-hari, namun lebih menekankan kepada beberapa hal yaitu:

Data apa saja yang diperlukan untuk bisnis mereka?

Bagaimana data tersebut berelasi dengan data lainnya?

Siapa saja yang diperbolehkan mengakses data tsb?

Terdapat beberapa pendekatan dalam membuat sistem basis data yang baik antara lain

teknik dInormalisasi data dan ERD, Untuk menggambarkan ER diagram setidaknya ada tiga

langkah yang harus dilakukan oleh perancang basis data yaitu:

1. Menemukan atau mendefinisikan entitas.

2. Menemukan atau mendefinisikan atribute.

3. Menemukan atau mendefinisikan relasi.

4. Menggambarkan ERD menggunakan notasi-notasi standar.

Page 33: KATA PENGANTAR - neezasty.files.wordpress.com · 1 KATA PENGANTAR Kurikulum 2013 pada jenjang SMK didesain dengan tujuan membekali siswa agar berkompeten pada paket keahlian masing-masing

33

D. Aktifitas Pembelajaran

1. Metode Menemukan 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 tersebut. Adapun prosedur atau langkah-langkah

yang seharusnya dilakukan untuk menemukan atau mendefinisikan Entitas dalam suatu sistem

data base adalah sebagai berikut :

1. Buat ilustrasi atau gambaran cerita (role of bussiness) tentang sistem yang akan dicari

entitasnya.

2. Tandai setiap objek yang diwakili oleh kata benda yang ada di dalam ilustrasi tersebut.

3. Untuk setiap objek tersebut yakinkan bahwa ia memiliki karakteristik yang nanti disebut

sebagai atribut.

4. Tentukan objek yang merupakan entitas (Jika memang ia memiliki karakteristik jadikan

ia sebagai entitas)

5. Menggambarkan entitas beserta atributnya menggunakan notasi simbol yang telah

ditentukan.

2. Prosedur menemukan Entitas

Pernyataan dibawah ini menjelaskan salah satu contoh langkah-langkah yang dilakukan

untuk menemukan atau mengidintifikasi entitas dengan kasus sistem basis data di perusahaan

A. Prosedur untuk menemukan entitas tersebut adalah sebagai berikut:

1. Langkah 1: Membuat gambaran cerita tentang sistem kepegawaian di suatu perusahaan

A.

Page 34: KATA PENGANTAR - neezasty.files.wordpress.com · 1 KATA PENGANTAR Kurikulum 2013 pada jenjang SMK didesain dengan tujuan membekali siswa agar berkompeten pada paket keahlian masing-masing

34

2. Langkah 2. Menandai pada soal cerita diatas setiap objek yang diwakili oleh kata benda

yang ada di dalam ilustrasi tersebut.

3. Langkah 3: Untuk setiap objek tersebut yakinkan bahwa ia memiliki karakteristik yang nanti

disebut sebagai atribut. Sehingga kita menemukan entitas dan kemungkinan atributnya adalah

sebagai berikut :

Perusahaan A memiliki 100 pegawai. Setiap pegawai dipimpin pengawas/mandor dari

pegawai perusahaan itu sendiri dan tidak semua pegawai memimpin pegawai yang lain.

sehingga satu pengawas dapat memimpin beberapa pegawai. Setiap pegawai bekerja

untuk suatu departemen dan dalam suatu departemen dapat terdiri dari beberapa

pegawai. Setiap departemen dikepalai oleh seorang pegawai yang bekerja mulai tanggal

tertentu. Sebuah departemen dapat berada di beberapa lokasi. Selain bekerja di suatu

departemen pegawai dapat bekerja pada beberapa proyek. Setiap proyek

dikendalikan/diatur oleh suatu departemen, namun suatu departemen tidak harus

mengendalikan/mengatur proyek. Satu departemen dapat mengendalikan beberapa

proyek dan satu proyek hanya dikendalikan oleh satu departemen Satu proyek dapat

terdiri dari beberapa pegawai. Untuk keperluan penggajian perusahaan memerlukan data

tanggungan pegawai. Seorang pegawai dapat menanggung beberapa tanggungan. Jika

seorang pegawai pindah maka datanya akan dipindahkan / dihapus berikut data

tanggungan / keluarganya.

Perusahaan A memiliki 100 pegawai. Setiap pegawai dipimpin pengawas/mandor dari

pegawai perusahaan itu sendiri dan tidak semua pegawai memimpin pegawai yang lain.

sehingga satu pengawas dapat memimpin beberapa pegawai. Setiap pegawai bekerja

untuk suatu departemen dan dalam suatu departemen dapat terdiri dari beberapa

pegawai. Setiap departemen dikepalai oleh seorang pegawai yang bekerja mulai tanggal

tertentu. Sebuah departemen dapat berada di beberapa lokasi. Selain bekerja di suatu

departemen pegawai dapat bekerja pada beberapa proyek. Setiap proyek

dikendalikan/diatur oleh suatu departemen, namun suatu departemen tidak harus

mengendalikan/mengatur proyek. Satu departemen dapat mengendalikan beberapa

proyek dan satu proyek hanya dikendalikan oleh satu departemen.Satu proyek dapat

terdiri dari beberapa pegawai. Untuk keperluan penggajian perusahaan memerlukan data

tanggungan pegawai. Seorang pegawai dapat menanggung beberapa tanggungan. Jika

seorang pegawai pindah maka datanya akan dipindahkan / dihapus berikut data

tanggungan atau keluarganya.

Page 35: KATA PENGANTAR - neezasty.files.wordpress.com · 1 KATA PENGANTAR Kurikulum 2013 pada jenjang SMK didesain dengan tujuan membekali siswa agar berkompeten pada paket keahlian masing-masing

35

4. Langkah 4: Tentukan objek yang merupakan entitas (Jika memang ia memiliki

karakteristik jadikan ia sebagai entitas)

3. Prosedur Menemukan atribut.

Atribut adalah merupakan sifat-sifat atau karakteristik pada suatu entitas. Nama atribut

ini identik dengan nama kolom atau field pada suatu tabel dalam basis data. Atribut dapat

dibedakan menjadi beberapa macam antara lain adalah:

1. Simple Attribute dan Composite Attribute

2. Single Valued Attribute dan Multi Valued Attribute

3. Mandatory Attribute

4. Derived Attribute (Attribut Turunan)

5. Key Attribute (Atribut Kunci)

Adapapun untuk menemukan atribut dpat dilakukan melalui langkah-langkah dibawah

Kandidat Entitas : kandidiat Atribut, kandidat atribut….

Perusahaan: NoPerusahaan, nama, alamat

Pegawai: NoKTP, Nama, Alamat, Jenis kelamin,gaji

Pengawas:NoKTP, Nama, Alamat, Jenis kelamin,gaji

Departemen: Nomor, Nama, lokasi, jumlah pegawai

Lokasi : Lokasi

Proyek: Nomor, nama, lokasi

Tanggungan: nama, jenis kelamin, tanggal lahir, hubungan dengan pegawai

Entitas : Atribut1, atribut2, atribut3,… entitas / bukan entitas

a) Perusahaan: NoPerusahaan, nama, alamat (hanya berisi satu baris data) bukan

entitas

b) Pegawai: NoKTP, Nama, Alamat, Jenis kelamin,gaji entitas kuat

c) Pengawas:NoKTP, Nama, Alamat, Jenis kelamin,gaji sama dengan entitas

Pegawai

d) Departemen: Nomor, Nama, lokasi, jumlah pegawai entitas kuat

e) Lokasi : lokasi (karakteristiknya departemen, tidak memiliki karakteristik lain (unik))

bukan entitas

f) Proyek: Nomor, nama, lokasi entitas kuat

g) Tanggungan: nama, jenis kelamin, tanggal lahir, hubungan dengan pegawai

merupakan entitas lemah karena keberadaannya tergantung dari entitas kuat

pegawai.

Page 36: KATA PENGANTAR - neezasty.files.wordpress.com · 1 KATA PENGANTAR Kurikulum 2013 pada jenjang SMK didesain dengan tujuan membekali siswa agar berkompeten pada paket keahlian masing-masing

36

ini yaitu:

1. Tentukan dan lengkapi karakteristik dari tiap-tiap entitas

2. Dari setiap karakteristik tersebut tentukan termasuk atribut apa

3. Menggambarkan entitas beserta atributnya dengan notasi yang sesuai

Page 37: KATA PENGANTAR - neezasty.files.wordpress.com · 1 KATA PENGANTAR Kurikulum 2013 pada jenjang SMK didesain dengan tujuan membekali siswa agar berkompeten pada paket keahlian masing-masing

37

E. Latihan / Tugas

1. Buat ilustrasi atau gambaran cerita tentang sistem basis data yang saudara akan buat.

2. Tandai setiap objek yang diwakili oleh kata benda yang ada di dalam ilustrasi tersebut.

3. Untuk setiap objek tersebut yakinkan bahwa ia memiliki karakteristik (atribut).

..................................................................................................................................................

..................................................................................................................................................

..................................................................................................................................................

..................................................................................................................................................

..................................................................................................................................................

..................................................................................................................................................

..................................................................................................................................................

..................................................................................................................................................

..................................................................................................................................................

..................................................................................................................................................

..................................................................................................................................................

..................................................................................................................................................

..................................................................................................................................................

..................................................................................................................................................

..................................................................................................................................................

....................................................................................

...................................................................................................................................................

...................................................................................................................................................

...................................................................................................................................................

...................................................................................................................................................

...................................................................................................................................................

...................................................................................................................................................

...................................................................................................................................................

...................................................................................................................................................

...................................................................................................................................................

...........................................................................................................

Kandidat Entitas : kandidiat Atribut, kandidat atribut….

…………................ : ……………………………………………….

…………................ : ……………………………………………….

…………................ : ……………………………………………….

…………................ : ……………………………………………….

…………................ : ……………………………………………….

…………................ : ……………………………………………….

Page 38: KATA PENGANTAR - neezasty.files.wordpress.com · 1 KATA PENGANTAR Kurikulum 2013 pada jenjang SMK didesain dengan tujuan membekali siswa agar berkompeten pada paket keahlian masing-masing

38

4. Tentukan objek yang merupakan entitas (Jika memang ia memiliki karakteristik jadikan ia

sebagai entitas)

5. Tentukan dan lengkapi karakteristik dari tiap-tiap entitas dan tentukan termasuk atribut apa

Tabel 0.3. Lembar Kerja indentifikasi atribut

Entitas

(Tipe entitas)

Nama Atribut Tipe Atribut Keterangan

………………..

(……………….)

………………………..

………………………..

………………………..

………………………..

………………………..

………………………..

………………………..

………………………..

………………………..

………………………..

………………………..

………………………..

……………….

.

(………………

.)

……………………

…..

……………………

…..

……………………

…..

……………………

…..

……………………

…..

……………………

…..

……………………

…..

……………………

…..

……………………

…..

……………………

…..

……………………

…..

……………………

…..

Entitas : Atribut1, atribut2, Atribut3…., entitas / bukan entitas

…………................ : ……………………………………………….

…………................ : ……………………………………………….

…………................ : ……………………………………………….

…………................ : ……………………………………………….

…………................ : ……………………………………………….

…………................ : ……………………………………………….

Page 39: KATA PENGANTAR - neezasty.files.wordpress.com · 1 KATA PENGANTAR Kurikulum 2013 pada jenjang SMK didesain dengan tujuan membekali siswa agar berkompeten pada paket keahlian masing-masing

39

6. Menggambarkan entitas beserta atributnya menggunakan notasi standar.

F. Rangkuman

Diagram relasi entitas atau entity-relationship diagram (ERD) adalah suatu diagram dalam

bentuk gambar atau simbol yang mengidentifikasi tipe dari entitas di dalam suatu sistem yang

diuraikan dalam data dengan atributnya, dan menjelaskan hubungan atau relasi diantara entitas

tersebut. Prosedur mengidentifikasi entitas dan atribut adalah: 1) membut ilustrasi atau gambaran

cerita tentang sistem yang akan dicari entitasnya. 2) Menandai setiap objek yang diwakili oleh

kata benda yang ada di dalam ilustrasi tersebut. 3) Menuliskan kandidat entitas dan atribut dari

obyek tersebut. 4) Menetapkan entitas dan tipe entitas. 5) Menetapkan atribut beserta type

atributnya. 6) Menggambarkan entitas beserta atributnya menggunakan notasi simbol yang telah

ditentukan.

Page 40: KATA PENGANTAR - neezasty.files.wordpress.com · 1 KATA PENGANTAR Kurikulum 2013 pada jenjang SMK didesain dengan tujuan membekali siswa agar berkompeten pada paket keahlian masing-masing

40

PEMBELAJARAN 4:

RELASI KARDINALITAS PADA ERD

A. Tujuan Pembelajaran

Setelah mengikuti kegiatan belajar diharapkan, melalui praktikum peserta didik dapat:

Menemukan relasi sesuai ilustrasi sistem basis data.

Menggambar entity relationship diagram sistem basis data.

B. Indikator Pencapaian Kompetensi

Membuat Entity Relationship Diagram.

C. Uraian materi

1. Relasi

Relasi menyatakan hubungan antara dua atau beberapa entitas. Setiap relasi mempunyai

batasan (constraint) terhadap kemungkinan kombinasi entitas yang berpartisipasi. Batasan

tersebut ditentukan dari situasi yang diwakili relasi tersebut. Ragam atau jenis relasi

dibedakan menjadi beberapa macam antara lain adalah:

a. Relasi Binary. Relasi binary merupakan relasi antara dua entitas. Relasi binary ini

dibedakan menjadi :

Relasi One-to-one (notasi 1:1)

Relasi One-to-many (notasi 1:N) atau many-to-one (notasi N:1)

Relasi Many-to-many (notasi M:N)

b. Relasi Ternary. Relasi ternary adalah merupakan relasi antara tiga entitas atau lebih.

Dalam Relasi One-to-one (1:1) setiap atribute dari satu entitas berpasangan dengan

satu attribute dari entitas yang direlasikan. Dalam relasi One-to-many (1:N) atau many-

to-one (N:1) satu atribute berelasi dengan beberapa atribute dari entitas yang direlasikan.

Dalam Many-to-many (M:N) satu atribute berelasi dengan beberapa atribute dari entitas

yang direlasikan. Begitu pula sebaliknya.

Page 41: KATA PENGANTAR - neezasty.files.wordpress.com · 1 KATA PENGANTAR Kurikulum 2013 pada jenjang SMK didesain dengan tujuan membekali siswa agar berkompeten pada paket keahlian masing-masing

41

Gambar 4.1. Ragam relasi antar entitas

Sebagaimana entias dalam relasi juga dapat dibedakan menjadi relasi kuat dan

relasi lemah. Gambar dibawah ini menjelaskan notasi umum untuk relasi kuat dan relasi

lemah.

Gambar 4.2. Notasi relasi entitas untuk entitas kuat (b) dan entitas lemah (c)

2. Batasan Partisipasi

Batasan partisipasi atau batasan hubungan entitas menjelaskan bagaimana data itu

berelasi, batasan ini menentukan bagaimana (harus ataukah tidak) berpartisipasi suatu entitas

dengan relasinya pada entitas lain. Batasan partisipasi dibedakan menjadi dua yaitu: 1)

Partisipasi Total (harus berpartisipasi) dan 2) Partisipasi Parsial (tidak harus berpartisipasi)

Contoh relasi yang merupakan partisipasi total adalah relasi antara pegawai dengan

departemen dengan nama relasi bekerja untuk dan partisipasi total disisi pegawai. Dari

deskripsi basis data disebutkan bahwa:

“Semua pegawai harus bekerja di bawah suatu departemen”

Dari pernyataan diatas mengindikasikan bahwa relasi disisi pegawai adalah relasi total

yang ditandai dengan kata kunci harus. Untuk menggambarkan relasi dengan partisipasi total

tersebut dapat dilakukan dengan dua pendekatan yaitu:

Menggunakan garis ganda pada relasi disisi pegawai

Menggunakan satu garis pada relasi disisi pegawai digabungkan dengan minimum 1

(minimum bekerja pada 1 departemen)

Page 42: KATA PENGANTAR - neezasty.files.wordpress.com · 1 KATA PENGANTAR Kurikulum 2013 pada jenjang SMK didesain dengan tujuan membekali siswa agar berkompeten pada paket keahlian masing-masing

42

Gambar 4.3. Relasi dengan batasan partisipasi total.

Contoh relasi yang merupakan partisipasi parsial adalah relasi antara pegawai dengan

departemen dengan nama relasi mengepalai daan partisipasi parsial disisi pegawai. Dari

deskripsi basis data disebutkan bahwa:

“Beberapa pegawai mengepalai sebuah departemen (setiap pegawai tidak harus

mengepalai suatu departemen) “

Dari pernyataan diatas mengindikasikan bahwa relasi disisi pegawai adalah mempunyai

partisipasi parsial. Hal ini ditandai dengan kata kunci (beberapa pegawai ...... atau tidak

harus.....). Untuk menggambarkan relasi dengan partisipasi parsial tersebut dapat dilakukan

dengan dua pendekatan yaitu:

Menggunakan satu garis pada relasi disisi pegawai

Menggunakan satu garis pada relasi disisi pegawai digabungkan dengan minimum 0 (tidak

mengepalai departemen)

Gambar 4.4. Relasi dengan batasan (constraint) partisipasi parsial

Page 43: KATA PENGANTAR - neezasty.files.wordpress.com · 1 KATA PENGANTAR Kurikulum 2013 pada jenjang SMK didesain dengan tujuan membekali siswa agar berkompeten pada paket keahlian masing-masing

43

D. Aktifitas Pembelajaran : Prosedur menemukan Relasi

Prosedur atau langkah-langkah yang seharusnya dilakukan untuk menemukan atau

mendefinisikan relasi dalam suatu sistem data base adalah sebagai berikut:

1. Dari gambaran cerita sistem, tandai setiap hubungan yang diwakili oleh kata kerja yang ada

di dalam ilustrasi beserta entitas yang berhubungan.

2. Identifikasikan rasio kardinalitas dari setiap hubungan.

3. Identifikasikan batasan partisipasi dari setiap hubungan yang ada berikut kemungkinan atribut

yang muncul dari setiap hubungan.

4. Gambarkan hubungan tersebut dalam bentuk notasi diagram dan gabungkan dengan notasi

Entitas dan atribut yang dibuat sebelumnya.

Pernyataan dibawah ini menjelaskan contoh langkah-langkah menemukan relasi untuk

kasus Sistem Kepegawaian di perusahaan A (lihat kembali deskripsi sistem basis data pada

kegiatan belajar sebelumnya), yaitu sebagai berikut:

1. Langkah 1 Menandai relasi dari deskriipsi cerita.

Dari gambaran cerita sistem, tandai dan tentukan setiap hubungan yang diwakili oleh

kata kerja yang ada di dalam ilustrasi dan entitas yang berhubungan.

2. Langkah 2 Identifikasi hubungan antara entitas.

Indentifikasi hubungan dilakukan dengan membuat tabel sepeti terlihat di bawah ini.

Hubungan berlangsung dua arah dari entitas 1 ke entitsas 2 dan sebaliknya. Kata kunci

hubungan satu sisi menggunakan kata aktif dan dari sisi sebaliknya menggunakan kata kunci

pasif.

Perusahaan A memiliki 100 pegawai. Setiap pegawai dipimpin pengawas/mandor dari

pegawai perusahaan itu sendiri dan tidak semua pegawai memimpin pegawai yang lain.

sehingga satu pengawas dapat memimpin beberapa pegawai. Setiap pegawai bekerja untuk

suatu departemen dan dalam suatu departemen dapat terdiri dari beberapa pegawai. Setiap

departemen dikepalai oleh seorang pegawai yang bekerja mulai tanggal tertentu. Tidak semua

pegawai mengepalai departemen. Sebuah departemen dapat berada di beberapa lokasi.

Selain bekerja di suatu departemen pegawai dapat bekerja pada beberapa proyek. Setiap

proyek dikendalikan/diatur oleh suatu departemen, namun suatu departemen tidak harus

mengendalikan/mengatur proyek. Satu departemen dapat mengendalikan beberapa proyek

dan satu proyek hanya dikendalikan oleh satu departemen.Satu proyek dapat terdiri dari

beberapa pegawai. Untuk keperluan penggajian perusahaan memerlukan data tanggungan

pegawai. Seorang pegawai dapat menanggung beberapa tanggungan. Jika seorang pegawai

pindah maka datanya akan dipindahkan / dihapus berikut data tanggungan atau keluarganya.

Page 44: KATA PENGANTAR - neezasty.files.wordpress.com · 1 KATA PENGANTAR Kurikulum 2013 pada jenjang SMK didesain dengan tujuan membekali siswa agar berkompeten pada paket keahlian masing-masing

44

Tabel 4.1. Identifikasi hubungan antara dua entitas dua arah

Entitas 1 Hubungan Entitas 2

Pengawas

(Pegawai)

memimpin Pegawai

Pegawai dipimpin Pengawas(Pegawai)

Pegawai bekerja untuk Departemen

Departemen terdiri dari Pegawai

Pegawai mengepalai Departemen

Departemen dikepalai Pegawai

Pegawai bekerja pada Proyek

Proyek terdiri dari Pegawai

Departemen mengatur Proyek

Proyek diatur Departemen

Pegawai menanggung Tanggungan

Tanggungan ditanggung Pegawai

Tabel 4.2. Identifikasi hubungan antara dua entitas satu arah

Entitas 1 Hubungan Entitas 2

Pengawas(Pegawai) memimpin Pegawai

Pegawai bekerja untuk Departemen

Pegawai mengepalai Departemen

Pegawai bekerja pada Proyek

Departemen mengatur Proyek

Pegawai menanggung Tanggungan

3. Langkah 3 Identifikasi rasio kardinalitas

Identifikasi rasio kardinalitas menjelaskan batasan (constraint) terhadap kemungkinan

kombinasi entitas yang berpartisipasi. Identifikasi rasionalitas dapat dinyatakan dengan dua

pendekatan yaitu:

1) Banyaknya entitas berpartisipasi (one-one, one-many, many-one atau many-many), dan

Banyaknya entitas berpartisipasi (minimal dan maksimal).

Tabel 4.3. Identifikasikan rasio kardinalitas dari setiap hubungan

Entitas 1 Banyaknya

Entitas 1

yang

berpartisipasi

Hubungan Banyaknya

Entitas 2

berpartisipasi

Entitas 2

Pegawai 1 memimpin N Pegawai

Pegawai 1 dipimpin 1 Pegawai

Pegawai 1 bekerja

untuk

1 Departemen

Departemen 1 terdiri dari N Pegawai

Page 45: KATA PENGANTAR - neezasty.files.wordpress.com · 1 KATA PENGANTAR Kurikulum 2013 pada jenjang SMK didesain dengan tujuan membekali siswa agar berkompeten pada paket keahlian masing-masing

45

Pegawai 1 mengepalai 1 Departemen

Departemen 1 dikepalai 1 Pegawai

Pegawai 1 bekerja pada N Proyek

Proyek 1 terdiri dari N Pegawai

Departemen 1 mengatur N Proyek

Proyek 1 diatur 1 Departemen

Pegawai 1 menanggung N Tanggungan

Tanggungan 1 ditanggung 1 Pegawai

Relasi antar entitas juga dapat diwujudkan dengan melibatkan identifikasikan batasan

partisipasi dari setiap hubungan yang ada. Tabel dibawah ini menjelaskn relasi yang melibatkan

banyaknya partisipasi (minimal dan maksimal).

Tabel 4.4. Indentifikasi batasan partisipasi (min, max) antara dua entitas.

Entitas 1

Banyaknya

Entitas 1

yang

berpartisipa

si

Hubungan

Banyaknya

Entitas 2

yang

berpartisipa

si

(min,max)

Entitas 2

Pegawai 1 memimpin (0,N) Pegawai

Pegawai 1 dipimpin (0,1) Pegawai

Pegawai 1 bekerja untuk (1,1) Departemen

Departemen 1 terdiri dari (1,N) Pegawai

Pegawai 1 mengepalai (0,1) Departemen

Departemen 1 dikepalai (1,1) Pegawai

Pegawai 1 bekerja pada (1,N) Proyek

Proyek 1 terdiri dari (1,N) Pegawai

Departemen 1 mengatur (0,N) Proyek

Proyek 1 diatur (1,1) Departemen

Pegawai 1 menanggung (0,N) Tanggungan

Tanggungan 1 ditanggung (1,1) Pegawai

4. Langkah 4 menggambarkan relasi antar entitas

Dari tabel Identifikasikan rasio kardinalitas untuk setiap hubungan dan tabel

indentifikasi batasan partisipasi (min, max) diatas dapat digambarkan diagram relasi

entitasnya, seperti terlihat digambar dibawah ini.

Page 46: KATA PENGANTAR - neezasty.files.wordpress.com · 1 KATA PENGANTAR Kurikulum 2013 pada jenjang SMK didesain dengan tujuan membekali siswa agar berkompeten pada paket keahlian masing-masing

46

Gambar 4.5. Diagram relasi entitas pegawai dan departemen

(a) melibatkan batasan partisipasi, (b) melibatkan rasio kardinalitas

(min,max) dan partisipasi total/parsial

Dengan cara yang sama dapat ditemukan dan digambarkan relasi antar entitas lainnya.

Gambar dibawah ini menjelaskan ER diagram secara lengkap untuk sistem kepegawaian di

perusahaan A

Gambar 4.6. ERD sistem basis data pegawai perusahaan A

Page 47: KATA PENGANTAR - neezasty.files.wordpress.com · 1 KATA PENGANTAR Kurikulum 2013 pada jenjang SMK didesain dengan tujuan membekali siswa agar berkompeten pada paket keahlian masing-masing

47

E. Latihan / Tugas

Berdasarkan uraian materi diatas dan hasil kegiatan belajar sebelumnya, lakukan kegiatan

berikut dengan cermat dan teliti:

1. Temukan atau identifikasi semua relasi dari deskripsi sistem basis data yang telah saudara

buat dalam kegiatan belajar sebelumnya!

2. Identifikasi untuk semua relasi entitas sesuai dengan langkah 1

Lembar Kerja Identifikasi hubungan antara dua entitas dua arah

Entitas 1 Hubungan Entitas 2

……………………….. ………………………. ………………………

……………………….. ………………………. ………………………

……………………….. ………………………. ………………………

……………………….. ………………………. ………………………

……………………….. ………………………. ………………………

……………………….. ………………………. ………………………

Lembar Kerja Identifikasi hubungan antara dua entitas satu arah

Entitas 1 Hubungan Entitas 2

……………………….

.

………………………. ……………………

……………………….

.

………………………. ……………………

……………………….

.

………………………. ……………………

……………………….

.

………………………. ……………………

……………………….

.

………………………. ……………………

……………………….

.

………………………. ……………………

3. Identifikasi rasio kardinalitas untuk setiap relasi dengan melibatkan banyaknya batasan

partisipasi (min,max)

..............................................................................................................................................................

..............................................................................................................................................................

..............................................................................................................................................................

..............................................................................................................................................................

..............................................................................................................................................................

..............................................................................................................................................................

..............................................................................................................................................................

..............................................................................................................................................................

Page 48: KATA PENGANTAR - neezasty.files.wordpress.com · 1 KATA PENGANTAR Kurikulum 2013 pada jenjang SMK didesain dengan tujuan membekali siswa agar berkompeten pada paket keahlian masing-masing

48

Lembar Kerja Identifikasi relasi melibatkan rasio kardinalitas min,max

Entitas 1 Banyaknya

Entitas 1 yang berpartisipasi

Hubungan

Banyaknya Entitas 2 yang berpartisipasi

(min,max)

Entitas 2

……………... ……….. ……………… …………. …………

……………... ……….. ……………… …………. …………

……………... ……….. ……………… …………. …………

……………... ……….. ……………… …………. …………

……………... ……….. ……………… …………. …………

……………... ……….. ……………… …………. …………

……………... ……….. ……………… …………. …………

4. Gambarkan semua relasi antar entitas sehingga menghasilkan entity relationship diagram

lengkap sistem basis data.

Page 49: KATA PENGANTAR - neezasty.files.wordpress.com · 1 KATA PENGANTAR Kurikulum 2013 pada jenjang SMK didesain dengan tujuan membekali siswa agar berkompeten pada paket keahlian masing-masing

49

F. Rangkuman

Prosedur yang dilakukan untuk menemukan relasi dalam suatu sistem basis data adalah : 1)

Dari gambaran cerita sistem, tandai setiap hubungan yang diwakili oleh kata kerja yang ada di

dalam ilustrasi beserta entitas yang berhubungan. 2) Identifikasikan rasio kardinalitas dari setiap

hubungan. 3) Identifikasikan batasan partisipasi dari setiap hubungan yang ada berikut

kemungkinan atribut yang muncul dari setiap hubungan. 4) Gambarkan hubungan tersebut dalam

bentuk notasi diagram dan gabungkan dengan notasi Entitas dan atribut yang dibuat sebelumnya.

Page 50: KATA PENGANTAR - neezasty.files.wordpress.com · 1 KATA PENGANTAR Kurikulum 2013 pada jenjang SMK didesain dengan tujuan membekali siswa agar berkompeten pada paket keahlian masing-masing

50

PEMBELAJARAN 5:

NORMALISASI BASIS DATA

A. Tujuan Pembelajaran

Setelah mengikuti kegiatan belajar ini, melalui observasi diharapkan peserta didik dapat:

menganalisis ragam bentuk teknik normalisasi data

B. Indikator Pencapaian Kompetensi

Menganalisis teknik normalisasi basis data.

C. Uraian materi

1. Definisi Normalisasi

Normalisasi adalah suatu teknik yang menstrukturkan atau mendekomposisi atau

memecah data menggunakan cara–cara tertentu untuk mencegah timbulnya permasalahan

pengolahan data dalam basis data. Permasalahan yang dimaksud adalah berkaitan dengan

penyimpangan–penyimpangan (anomalies) yang terjadi akibat adanya kerangkapan data

dalam relasi dan inefisiensi pengolahan data. Proses normalisasi akan menghasilkan relasi

yang optimal, jika:

1. Memiliki struktur record yang mudah untuk dimengerti.

2. Memiliki struktur record yang sederhana dalam pemeliharaan.

3. Memiliki struktur record yang mudah untuk ditampilkan kembali untuk memenuhi

kebutuhan pemakai.

4. Minimalisasi kerangkapan data guna meningkatkan kinerja sistem.

Dalam merancang basis data terdapat dua pendekatan yang sering dilakukan yaitu: 1)

Model entity–relationship-diagram (ERD) yang telah dijelaskan dalam kegiatan belajar 3, 4,

5. dan 2) Menerapkan normalisasi terhadap struktur tabel yang telah diketahui.

Dalam pendekatan normalisasi, perancangan basis data bertitik tolak dari situasi nyata.

Basis data telah memiliki item–item data yang siap ditempatkan dalam baris dan kolom pada

Page 51: KATA PENGANTAR - neezasty.files.wordpress.com · 1 KATA PENGANTAR Kurikulum 2013 pada jenjang SMK didesain dengan tujuan membekali siswa agar berkompeten pada paket keahlian masing-masing

51

tabel–tabel relasional. Demikian juga dengan sejumlah aturan tentang keterhubungan antara

item–item data tersebut. Sementara pendekatan model data ER lebih tepat dilakukan jika yang

diketahui baru prinsip sistem basis data secara keseluruhan.

Pada penerapannya dua pendekatan tersebut dilakukan secara bersama–sama. Untuk

kepentingan evaluasi dan dokumentasi, hasil normalisasi diwujudkan dalam sebuah model

data. Model data yang sudah jadi tersebut dapat dimodifikasi dengan pertimbangan tertentu.

Selanjutnya diimplementasikan dalam bentuk sejumlah struktur tabel pada sebuah basis data.

Struktur ini dapat diuji kembali dengan menerapkan aturan–aturan normalisasi, hingga

akhirnya diperoleh sebuah struktur basis data yang benar–benar efektif dan efisien. Begitulah

kedua pendekatan dapat saling memperkuat satu sama lain.

2. 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: Pengulangan informasi dan Potensi

inkonsistensi data pada operasi pengubahan. Terdapat enam bentuk normal (normal form)

dalam teknik normalisasi data, keenam bentuk tersebut adalah :

1. Bentuk Normal Tahap pertama (1st Normal Form)

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

3. Bentuk Normal Tahap Ketiga (3rd Normal Form)

4. Bentuk Normal Boyce - Code (BCNF)

5. Bentuk Normal Tahap Keempat (4rd Normal Form)

6. Bentuk Normal Tahap Kelima (5rd Normal Form)

3. 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:

Page 52: KATA PENGANTAR - neezasty.files.wordpress.com · 1 KATA PENGANTAR Kurikulum 2013 pada jenjang SMK didesain dengan tujuan membekali siswa agar berkompeten pada paket keahlian masing-masing

52

Gambar 5.1. Langkah-langkah proses normalisasi data.

D. Aktifitas Pembelajaran: Menganalisis Bentuk-Bentuk Teknik Normalisasi Data

1. Bentuk tidak normal (Unnormalized Form)

Bentuk tidak normal ini memiliki beberapa ciri-ciri, yaitu antara lain adalah :

Merupakan kumpulan data yang akan direkam

Tidak ada keharusan mengikuti suatu format tertentu

Dapat saja data tidak lengkap atau terduplikasi

Data dikumpulkan apa adanya sesuai dengan kedatangannya.

Page 53: KATA PENGANTAR - neezasty.files.wordpress.com · 1 KATA PENGANTAR Kurikulum 2013 pada jenjang SMK didesain dengan tujuan membekali siswa agar berkompeten pada paket keahlian masing-masing

53

Beberapa contoh tabel yang tidak normal dijelaskan dalam tabel 8.1 dan tabel 8.2

dibawah ini.

Tabel 5.1. Tabel mahasiswa yang tidak normal

Tabel 5.2.Tabel mahasiswa (Nis, nama mahasiswa, hobi1,hobi2,hobi3) yang tidak normal

2. Bentuk Normal Tahap pertama (1st Normal Form)

Bentuk normal ke satu 1 NF ini mempunyai beberapa ciri antara lain yaitu:

Setiap data dibentuk dalam flat file (file data/ rata)

Data dibentuk dalam satu record demi satu record dan nilai dari field field berupa

"atomic value", tidak dapat dibagi-bagi lagi.

Tidak ada set atribute yang berulang ulang atau atribute bernilai ganda (multivalue).

Tidak ada set atribut composite atau kombinasinya dalam domain data yang sama.

Tiap field hanya satu pengertian, bukan merupakan kumpulan kata yang mempunyai

arti mendua, hanya satu arti saja dan juga bukanlah pecahan kata sehingga artinya lain.

Page 54: KATA PENGANTAR - neezasty.files.wordpress.com · 1 KATA PENGANTAR Kurikulum 2013 pada jenjang SMK didesain dengan tujuan membekali siswa agar berkompeten pada paket keahlian masing-masing

54

Untuk dapat memenuhi aturan 1NF, maka contoh tabel 8.1 dan tabel 8.2 diatas dirubah

atau dipecah (dekomposisi) menjadi 2 entitas, yakni entitas siswa dan entitas hobi seperti

gambar berikut :

Gambar 5.2.Hasil dekomposisi tabel mahasiswa untuk memenuhi bentuk 1NF

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

Bentuk normal kedua mempunyai beberapa persyaratan antara lain adalah :

Bentuk data telah memenuhi kriteria bentuk normal kesatu.

Atribute bukan kunci haruslah bergantung secara fungsi pada kunci utama atau primary

key.

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

Page 55: KATA PENGANTAR - neezasty.files.wordpress.com · 1 KATA PENGANTAR Kurikulum 2013 pada jenjang SMK didesain dengan tujuan membekali siswa agar berkompeten pada paket keahlian masing-masing

55

Tabel di atas telah memenuhi 1NF, namun belum memenuhi 2NF, {NIS,

Kode_Mapel} yang dianggap sebagai primary key sedangkan:

Tabel di atas perlu didekomposisi menjadi beberapa tabel untuk memenuhi syarat

2NF. Dekomposisi sesuai dengan functional dependencynya (FD) adalah 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, 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)

4. 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

Page 56: KATA PENGANTAR - neezasty.files.wordpress.com · 1 KATA PENGANTAR Kurikulum 2013 pada jenjang SMK didesain dengan tujuan membekali siswa agar berkompeten pada paket keahlian masing-masing

56

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)

5. Boyce Code Normal Form (BCNF)

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.

Sebuah tabel dikatakan memenuhi BCNF jika untuk semua ketergantungan fungsional

dengan notasi X Y, maka X harus merupakan candidate key pada tabel tersebut. Jika

tidak demikian, maka tabel tersebut harus didekomposisi berdasarkan ketergantungan

fungsional yang ada, sedemikian hingga X menjadi candidat key dari tabel–tabel hasil

dekomposisi. Contoh tabel yang tidak memenuhi BCNF adalah sebagai berikut :

Ditentukan suatu tabel A = (E, F, G, H, I) dan berlaku ketergantungan fungsional,

sebagai berikut yaitu :

E, F G, H, I

F, G H, I

Page 57: KATA PENGANTAR - neezasty.files.wordpress.com · 1 KATA PENGANTAR Kurikulum 2013 pada jenjang SMK didesain dengan tujuan membekali siswa agar berkompeten pada paket keahlian masing-masing

57

Tabel A tersebut tidak memenuhi BCNF karena ada pasangan key F, G yang bukan

candiday key, sehingga F, G H, I.

Sedangkan E, F adalah candidat key karena E, F G, H, I

Karena terdapat 2 ketergantungan fungsional maka tabel A tidak memenuhi BCNF. Untuk

memenuhi aturan BCNF maka tabel tersebut harus didekomposisikan menjadi:

A1 = (E, F, G) dengan ketergantungan fungsional E, F G

A2 = (F, G, H, I) dengan ketergantungan fungsional F, G H, I

Contoh lain untuk bentuk ini adalah tabel SEMINAR, dengan kunci primernya adalah

no_peserta dan kode_seminar, dengan asumsi bahwa:

Peserta dapat mengambil 1 atau 2 seminar.

Setiap seminar membutuhkan 2 instruktur.

Setiap peserta dibimbing oleh salah satu dari 2 instruktur seminar.

Setiap instruktur boleh hanya membimbing 1 seminar saja.

Pada contoh relasi berikut, no_peserta dan kode_seminar menunjukkan seorang instruktur.

Tabel 5.3. Tabel seminar

No_Peserta Kode_seminar Nama_instruktur

2201001 2281 Santi

2201002 2281 Karyadi

2201003 2291 Jeni

2201002 2291 Rendi

2201004 2291 Rendi

Page 58: KATA PENGANTAR - neezasty.files.wordpress.com · 1 KATA PENGANTAR Kurikulum 2013 pada jenjang SMK didesain dengan tujuan membekali siswa agar berkompeten pada paket keahlian masing-masing

58

Bentuk relasi SEMINAR adalah memenuhi bentuk normal ketiga (3NF), tetapi tidak BCNF

karena Kode_seminar masih bergantung fungsi pada instruktur, jika setiap instruktur dapat

mengajar hanya pada satu seminar. Kode_seminar bergantung fungsi pada satu atribut

bukan superkey seperti yang disyaratkan oleh BCNF. Maka relasi SEMINAR harus

didekomposisi menjadi dua relasi, yaitu relasi pengajar dan seminar_instruktur, seperti

berikut ini :

Pengajar : (Nama_instruktur, Kode_seminar) dan

Seminar_instruktur : (No_peserta, Nama_instruktur)

6. Bentuk Normal Tahap ke empat (4th Normal Form)

Suatu tabel relasional dikatakan dalam bentuk normal keempat (4NF) jika memenuhi

beberapa ketentuan sebagai berikut : Bila telah berada dalam bentuk BCNF dan tidak ada

multivalued dependency nontrivial. Multivalued dependency (MVD) dipakai dalam bentuk

normal keempat (4NF). Dependensi ini dipakai untuk menyatakan hubungan satu ke bantak

(one tomany).

Setiap atribut di dalamnya tidak mengalami ketergantungan pada banyak nilai atau

dengan kalimat lain, bahwa semua atribut yang mengalami ketergantungan pada banyak

nilai adalah bergantung secara fungsional (functionally dependency) Berikut ini adalah salah

satu contoh tabel relasional yang belum memenuhi 4NF :

Tabel 5.4. contoh relasi yang belum memenuhi bentuk normal tahap 4

Page 59: KATA PENGANTAR - neezasty.files.wordpress.com · 1 KATA PENGANTAR Kurikulum 2013 pada jenjang SMK didesain dengan tujuan membekali siswa agar berkompeten pada paket keahlian masing-masing

59

Relasi tersebut menggambarkan mengenai dosen yang mengajar matakuliah tertentu

dengan isi matakuliah yang bersangkutan. Contoh tabel dibawah ini menjelaskan dua dosen

yang mengajar pengenalan komputer, yaitu Budi dan Sanjaya.

Tabel 5.5. Penyederhanaan relasi atau tabel 8.4

Adapun isi matakuliah Pengenalan Komputer adalah Dasar Komputer, Pengenalan

Pengolahan Kata dan Pengenalan Lembaran Kerja. Relasi berikut ini memperlihatkan relasi

yang telah dinormalisasikan berdasarkan relasi sebelumnya. Langkah selanjutnya adalah

untuk memenuhi syarat bentuk normal tahap 4), maka relasi tersebut diatas dapat

didekomposisi menjadi dua relasi sebagai berikut :

Matakuliah_dosen : (Matakuliah, Dosen)

Matakuliah_isi : (Matakuliah, Isi)

7. Bentuk Normal Tahap Kelima (5th Normal Form)

Bentuk Normal 5NF dibangun berdasarkan konsep joint dependency sedangkan

keempat bentuk sebelumnya dibangun berdasarkan functional dependency. Joint dependency

menjelaskan bahwa apabila sebuah tabel telah didekomposisi menjadi tabel-tabel lebih kecil,

tabel tersebut harus bisa digabungkan lagi (join) untuk membentuk tabel semula. Bentuk

normal kelima ini sering disebut juga sebagai Projection Join Normal Form (PJNF). Suatu

tabel memenuhi bentuk normal 5rdNF jika dan hanya jika Kerelasian antar data dalam relasi

tersebut tidak dapat direkonstruksi dari struktur relasi yang memuat atribut yang lebih sedikit.

Sebagai contoh: terdapat hubungan dealer yaitu suatu perusahaan distributor kendaraan.

Dalam hal ini distributor memiliki sejumlah produk kendaraan. Tabel relasional dibawah ini

menjelaskan relasi tabel dealer, kendaraan dan distributor.

Page 60: KATA PENGANTAR - neezasty.files.wordpress.com · 1 KATA PENGANTAR Kurikulum 2013 pada jenjang SMK didesain dengan tujuan membekali siswa agar berkompeten pada paket keahlian masing-masing

60

Tabel 5.6. Relasi Dealer Distributor dan kendaraan

Relasi tersebut telah memenuhi dependensi gabungan, Sehingga relasi tersebut dapat

didekomposisi menjadi tiga buah relasi yaitu :

Deal_Dist (Dealer_Distributor).

Dist_Kend (Distributor_Kendaraan).

Deal_Kend (Dealer_Kendaraan).

Gabungan ketiga relasi tersebut akan membentuk relasi Dealer-Distributor-Kendaraan

(DDK) dan gabungan ketiganya. Kemungkinan proyeksi tabel relasional tersebut akan

menghasilkan suatu relasi antara yang salah, namun ketiganya akan menghasilkan relasi

sesuai aslinya. Gambar dibawah ini menjelaskan tabel relasional Dealer-Distributor-

Kendaraan (DDK)

Gambar 5.4. Tabel relasional Dealer-Distributor-Kendaraan (DDK)

Page 61: KATA PENGANTAR - neezasty.files.wordpress.com · 1 KATA PENGANTAR Kurikulum 2013 pada jenjang SMK didesain dengan tujuan membekali siswa agar berkompeten pada paket keahlian masing-masing

61

8. Efek Normalisasi

Pada kenyataannya, penerapan normalisasi juga 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.

Adanya batasan penerapan pada beberapa DBMS untuk ukuran computer pribadi/PC,

berkaitan dengan batas maksimal relasi yang dapat dibuka secara bersamaan

E. Latihan / Tugas / Kasus

Sebuah Perusahaan PEC-TECH ingin membangun system informasi menggunakan basis

data untuk pengelolaan barang. Dalam hal ini informasi yang akan diperoleh adalah informasi

data stock barang keluar pada Warehouse PEC-TECH. Pengelolaan data sementara ini masih

menggunakan Microsoft excel dengan contoh keluaran Laporan Barang Keluar dan Laporan

Rekapitulasi Barang Keluar diperlihatkan dalam tabel dibawah ini.

Dengan menggunakan prinsip-prinsip normalisasi buatlah diagram relasi

tabel (relational model) dan diagram relasi entitas (entity relationship

diagram)

Page 62: KATA PENGANTAR - neezasty.files.wordpress.com · 1 KATA PENGANTAR Kurikulum 2013 pada jenjang SMK didesain dengan tujuan membekali siswa agar berkompeten pada paket keahlian masing-masing

62

Tabel Laporan barang keluar

Tabel Laporan Rekapitulasi Barang Keluar

Page 63: KATA PENGANTAR - neezasty.files.wordpress.com · 1 KATA PENGANTAR Kurikulum 2013 pada jenjang SMK didesain dengan tujuan membekali siswa agar berkompeten pada paket keahlian masing-masing

63

F. Lembar kerja

1. Buatlah tabel yang menjelaskan bentuk unnormal form.

2. Buatlah tabel yang menjelaskan Normalisasi Pertama (1NF/ First Normal Form)

Page 64: KATA PENGANTAR - neezasty.files.wordpress.com · 1 KATA PENGANTAR Kurikulum 2013 pada jenjang SMK didesain dengan tujuan membekali siswa agar berkompeten pada paket keahlian masing-masing

64

3. Buatlah tabel yang menjelaskan Normalisasi Ke Dua (2 NF /Second Normal Form)

4. Jika memungkinkan buatlah tabel yang menjelaskan Normalisasi Ke Tiga (3 NF /Second

Normal Form)

Page 65: KATA PENGANTAR - neezasty.files.wordpress.com · 1 KATA PENGANTAR Kurikulum 2013 pada jenjang SMK didesain dengan tujuan membekali siswa agar berkompeten pada paket keahlian masing-masing

65

5. Gambarkan Diagram Relational Model

6. Gambarkan diagram relasi entitasnya (Entity Relationship Diagram)

Page 66: KATA PENGANTAR - neezasty.files.wordpress.com · 1 KATA PENGANTAR Kurikulum 2013 pada jenjang SMK didesain dengan tujuan membekali siswa agar berkompeten pada paket keahlian masing-masing

66

G. Rangkuman

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 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 (5rd NF)

Page 67: KATA PENGANTAR - neezasty.files.wordpress.com · 1 KATA PENGANTAR Kurikulum 2013 pada jenjang SMK didesain dengan tujuan membekali siswa agar berkompeten pada paket keahlian masing-masing

67

PEMBELAJARAN 6:

SISTEM MANAJEMEN BASIS DATA (DBMS)

A. Tujuan Pembelajaran

Setelah mengikuti kegiatan belajar ini diharapkan:

Melalui observasi peserta didik dapat menganalisis berbagai ragam jenis perangkat lunak

Sistem manajemen Basis Data dengan benar.

B. Indikator pencapaian Kompetensi

Membuat basis data menggunakan fitur visual DBMS

C. Uraian materi

1. Definisi Sistem manajemen basis Data

Sistem manajemen basis data (database management system, DBMS), atau sering

disingkat SMBD, adalah suatu sistem atau perangkat lunak yang dirancang untuk mengelola

suatu basis data dan menjalankan operasi terhadap data yang diminta banyak pengguna.

Contoh tipikal SMBD adalah akuntansi, sumber daya manusia, dan sistem pendukung

pelanggan. SMBD telah berkembang menjadi bagian standar di bagian pendukung (back

office) suatu perusahaan atau organisasi. Contoh SMBD adalah Oracle, SQL server

2000/2003, MS Access, MySQL dan sebagainya.

DBMS merupakan perangkat lunak yang dirancang untuk dapat melakukan utilisasi dan

mengelola koleksi data dalam jumlah yang besar. DBMS juga dirancang untuk dapat

melakukan manipulasi data secara lebih mudah. Sebelum ada DBMS, data pada umumnya

disimpan dalam bentuk flat file, yaitu file teks yang ada pada sistem operasi. Sampai sekarang

masih ada aplikasi yang menyimpan data dalam bentuk flat secara langsung. Menyimpan data

dalam bentuk flat file mempunyai kelebihan dan kekurangan. Penyimpanan dalam bentuk ini

akan mempunyai manfaat yang optimal jika ukuran filenya relatif kecil, seperti file password

pada sistem operasi Unix dan Unix-like. File password pada umumnya hanya digunakan

untuk menyimpan nama yang jumlahnya tidak lebih dari 1000 orang.

Page 68: KATA PENGANTAR - neezasty.files.wordpress.com · 1 KATA PENGANTAR Kurikulum 2013 pada jenjang SMK didesain dengan tujuan membekali siswa agar berkompeten pada paket keahlian masing-masing

68

Selain dalam bentuk flat file, penyimpanan data juga dapat dilakukan dengan

menggunakan program bantu seperti spreadsheet. Penggunaan perangkat lunak ini

memperbaiki beberapa kelemahan dari flat file, seperti bertambahnya kecepatan dalam

pengolahan data. Namun demikian metode ini masih memiliki banyak kelemahan,

diantaranya adalah masalah manajemen dan keamanan data yang masih kurang. Penyimpanan

data dalam bentuk DBMS mempunyai banyak manfaat dan kelebihan dibandingkan dengan

penyimpanan dalam bentuk flat file atau spreadsheet, diantaranya :

1. Performa untuk penyimpanan data dalam bentuk DBMS cukup besar, sangat jauh berbeda

dengan performance data yang disimpan dalam bentuk flat file. Disamping memiliki unjuk

kerja yang lebih baik, juga akan didapatkan efisiensi penggunaan media penyimpanan dan

memori

2. Integritas data lebih terjamin dengan penggunaan DBMS. Masalah redudansi sering

terjadi dalam flat file. Redudansi adalah kejadian berulangnya data atau kumpulan data

yang sama dalam sebuah database yang mengakibatkan pemborosan media penyimpanan.

3. Independensi. Perubahan struktur database dimungkinkan terjadi tanpa harus mengubah

aplikasi yang mengaksesnya sehingga pembuatan antarmuka ke dalam data akan lebih

mudah dengan penggunaan DBMS.

4. Sentralisasi. Data yang terpusat akan mempermudah pengelolaan database.

Kekonsistenan data yang diakses secara bersama-sama akan lebiih terjamin dari pada data

disimpan dalam bentuk file atau worksheet yang tersebar.

5. Keamanan. DBMS memiliki sistem keamanan yang lebih fleksibel daripada pengamanan

pada file sistem operasi. Keamanan dalam DBMS akan memberikan keluwesan dalam

pemberian hak akses kepada pengguna.

2. Sistem Manajemen Basis Data Relasional

Sebuah sistem manajemen basis data relasional atau dikenal sebagai relational database

management system (RDBMS) adalah sebuah program komputer (atau secara lebih tipikal

adalah seperangkat program komputer) yang dirancang untuk mengatur atau mengelola

sebuah basis data sebagai sekumpulan data yang disimpan secara terstruktur, dan melakukan

operasi-operasi data atas permintaan penggunanya. RDBMS banyak diterapkan pada berbagai

bidang kerja, misalnya akuntansi, manajemen sumber daya manusia, dan lain sebagainya.

Pada awalnya RDBMS hanya dimiliki oleh perusahaan-perusahaan berskala besar dan

memiliki perangkat komputer yang sesuai dengan spesifikasi standar yang dibutuhkan. Pada

saat itu standar yang diminta dapat dikatakan sangat tinggi yaitu untuk mendukung jumlah

Page 69: KATA PENGANTAR - neezasty.files.wordpress.com · 1 KATA PENGANTAR Kurikulum 2013 pada jenjang SMK didesain dengan tujuan membekali siswa agar berkompeten pada paket keahlian masing-masing

69

data yang besar. Saat ini implementasinya sudah sangat banyak dan adaptatif dengan

kebutuhan spesifikasi data yang rasional sehingga dapat dimiliki dan diimplementasikan oleh

segala kalangan sebagai bagian dari investasi perusahaan.

Edgar F. Codd memperkenalkan istilah RDBMS pada makalah seminarnya yang

berjudul "A Relational Model of Data for Large Shared Data Banks". Salah satu definisi yang

cukup dikenal secara luas atas sebuah sistem basis data relasional adalah “12 hukum Codd”.

Namun demikian, pada awal implementasinya banyak model relasional yang tidak mengikuti

seluruh elemen yang terdapat dalam hokum Codd tersebut. Hal tersebut menjadikan

terminologinya berkembang untuk mendeskripsikan sebuah tipikal sistem basis data yang

lebih luas. Dalam cakupan yang minimum sistem tersebut memenuhi kriteria sebagai berikut:

menyajikan data pada pengguna dalam bentuk relasional (ditampilkan dalam bentuk

tabular, sebagai koleksi dari tabel dimana setiap tabel beriisi sekumpulan baris dan

kolom)

menyediakan operator relasional untuk memanipulasi data dalam bentuk tabular

Sistem yang pertama kali secara relatif memenuhi implementasi atas sebuah model

relasional adalah Pusat Studi Ilmiah IB, Inggris, di Peterlee; IS1 (1970-1972) dan

implementasi lain yang mengikutinya adalah PRTV (1973-1979). Sistem yang pertama kali

dijual secara komersial sebagai RDBMS adalah Multics Relational Data Srore yang

dikembangkan pada tahun 1978. Selanjutnya adalah Berkeley Ingres QUEL dan IBM BS12.

3. Ragam Jenis SMBD

Beberapa software atau perangkat lunak DBMS yang sering digunakan dalam membuat

aplikasi program basis data dan sangat populer antara lain adalah MySQL, MS SQL Server,

Oracle, IBM DB/2, dan PostgreSQL. Sementara di pasaran terdapat sejumlah software DBMS

baik yang komersial atau open source antara lain adalah sebagai berikut: :

a. DBMS yang bersifat komersial: 4th Dimension, Dataphor, Daffodil database, DB2,

FileMaker Pro, FrontBase, Informix, InterBase, Matisse [1], Microsoft Access, Microsoft

SQL Server, Microsoft Visual FoxPro, Mimer SQL, Netezza, NonStop SQL, Oracle,

Progress 4GL, Sand Analytic Server (sebelumnya dikenal sebagai Nucleus), SmallSQL,

Sybase Adaptive Server Anywhere (sebelumnya dikenal sebagai Watcom SQL), Sybase

Page 70: KATA PENGANTAR - neezasty.files.wordpress.com · 1 KATA PENGANTAR Kurikulum 2013 pada jenjang SMK didesain dengan tujuan membekali siswa agar berkompeten pada paket keahlian masing-masing

70

Adaptive Server Enterprise, Sybase Adaptive Server IQ, Teradata, ThinkSQL [2],

VistaDB, VMDS.

b. DBMS yang bersifat open source: antara lain : Cloudscape, Derby, Firebird, H2, HSQLDB,

Ingres, MaxDB, MonetDB, MySQL, PostgreSQL, SQLite, tdbengine

a) MySQL

MySQL adalah sebuah perangkat lunak

sistem manajemen basis data relasional

(RDBMS) yang mendukung sistem multithread,

multi-user, dengan sekitar 6 juta instalasi di

seluruh dunia. MySQL tersedia sebagai

perangkat lunak gratis di bawah lisensi GNU General Public Licenci (GPL), tetapi

mereka juga menjual dibawah lisensi komersial untuk kasus-kasus dimana

penggunaannya tidak cocok dengan penggunaan GPL. Tidak seperti Apache,

merupakan software yang dikembangkan oleh komunitas umum, dan dicipta sehingga

code sumber dimiliki oleh penulisnya masing-masing.

MySQL dimiliki dan disponsori oleh sebuah perusahaan komersial Swedia yaitu

MySQL AB. MySQL AB memegang penuh hak cipta hampir atas semua kode

sumbernya. Kedua orang Swedia dan satu orang Finlandia yang mendirikan MySQL

AB adalah: David axmark, Allan larsson, dan Michael “monthy widenius. MySQL

memiliki beberapa kelebihan dan keistimewaan antara lain adalah sebagai berikut:

1. Portabilitas. MySQL dapat berjalan stabil pada berbagai sistem operasi seperti

Windows, Linux, FreeBSD, Mac Os X Server, Solaris, Amiga.

2. Perangkat lunak sumber terbuka. MySQL didistribusikan sebagai perangkat

lunak sumber terbuka (open source), dibawah lisensi GPL sehingga dapat

digunakan secara gratis.

3. Multi-user. MySQL dapat digunakan oleh beberapa pengguna dalam waktu yang

bersamaan tanpa mengalami masalah atau konflik.

4. 'Performance tuning', MySQL memiliki kecepatan yang menakjubkan dalam

menangani query sederhana, dengan kata lain dapat memproses lebih banyak

SQL per satuan waktu.

5. Ragam tipe data. MySQL memiliki ragam tipe data yang sangat kaya, seperti

signed/unsigned integer, float, double, char, text, date, timestamp,

Page 71: KATA PENGANTAR - neezasty.files.wordpress.com · 1 KATA PENGANTAR Kurikulum 2013 pada jenjang SMK didesain dengan tujuan membekali siswa agar berkompeten pada paket keahlian masing-masing

71

6. Perintah dan Fungsi. MySQL memiliki operator dan fungsi secara penuh yang

mendukung perintah Select dan Where dalam perintah (query).

7. Keamanan. MySQL memiliki beberapa lapisan keamanan seperti level

subnetmask, nama host, dan izin akses user dengan sistem perizinan yang

mendetail serta sandi terenkripsi.

8. Skalabilitas dan Pembatasan. MySQL mampu menangani basis data dalam skala

besar, dengan jumlah rekaman (records) lebih dari 50 juta dan 60 ribu tabel serta

5 milyar baris. Selain itu batas indeks yang dapat ditampung mencapai 32 indeks

pada tiap tabelnya.

9. Konektivitas. MySQL dapat melakukan koneksi dengan klien menggunakan

protokol TCP/IP, Unix Soket (UNIX), Named Pipes (NT).

10. Lokalisasi. MySQL dapat mendeteksi pesan kesalahan pada klien dengan

menggunakan lebih dari dua puluh bahasa. Meski pun demikian, Bahasa

Indonesia belum termasuk di dalamnya.

11. Antar Muka. MySQL memiliki antar muka (interface) terhadap berbagai aplikasi

dan bahasa pemrograman dengan menggunakan fungsi API (Application

Programming Interface).

12. Klien dan Peralatan. MySQL dilengkapi dengan berbagai peralatan (tool) yang

dapat digunakan untuk administrasi basis data, dan pada setiap peralatan yang ada

disertakan petunjuk online.

13. Struktur tabel. MySQL memiliki struktur tabel yang lebih fleksibel dalam

menangani ALTER TABLE, dibandingkan basis data lainnya semacam

PostgreSQL ataupun Oracle.

b) Oracle

Oracle adalah relational database management system (RDBMS) untuk mengelola

informasi secara terbuka, komprehensif dan terintegrasi. RDBMS Oracle pertama kali

dikembangkan oleh Larry Ellison, Bob Miner dan Ed Oates lewat perusahaan

konsultasinya bernama Software Development Laboratories (SDL) pada tahun 1977.

Pada tahun 1983, perusahaan ini berubah nama menjadi Oracle Corporation. Oracle

Server menyediakan solusi yang efisien dan efektif karena kemampuannya dalam hal

sebagai berikut:

Dapat bekerja di lingkungan client/server (pemrosesan tersebar)

Page 72: KATA PENGANTAR - neezasty.files.wordpress.com · 1 KATA PENGANTAR Kurikulum 2013 pada jenjang SMK didesain dengan tujuan membekali siswa agar berkompeten pada paket keahlian masing-masing

72

Menangani manajemen space dan basis data yang besar

Mendukung akses data secara simultan

Performansi pemrosesan transaksi yang tinggi

Menjamin ketersediaan yang terkontrol

Lingkungan yang terreplikasi

Oracle merupakan DBMS yang

paling rumit dan paling mahal di dunia,

namun banyak orang memiliki kesan yang

negatif terhadap Oracle. Keluhan-keluhan yang mereka lontarkan mengenai Oracle

antara lain adalah terlalu sulit untuk digunakan, terlalu lambat, terlalu mahal. Jika

dibandingkan dengan MySQL yang bersifat gratis, maka Oracle lebih terlihat tidak

kompetitif karena berjalan lebih lambat daripada MySQL meskipun harganya sangat

mahal.

Oracle merupakan DBMS yang dirancang khusus untuk organisasi berukuran

besar, bukan untuk ukuran kecil dan menengah. Kebutuhan organisasi berukuran besar

tidaklah sama dengan organisasi yang kecil atau menengah yang tidak akan berkembang

menjadi besar. Organisasi yang berukuran besar membutuhkan fleksibilitas dan

skalabilitas agar dapat memenuhi tuntutan akan data dan informasi yang bervolume

besar dan terus menerus bertambah besar.

Kelebihan oracle adalah fleksibilitas sistem yaitu kemampuan untuk

menyesuaikan diri dengan berbagai kebutuhan dan kondisi khusus yang dapat berubah-

ubah. Sebagai contoh, organisasi yang besar membutuhkan server yang terdistribusi dan

memiliki redundancy sehingga pelayanan bisa diberikan secara cepat dan tidak

terganggu jika ada server yang mati. Organisasi tersebut juga mempunyai berbagai

macam aplikasi yang dibuat dengan beragam bahasa pemrograman dan berjalan di

berbagai platform yang berbeda. Oracle memiliki banyak sekali fitur yang dapat

memenuhi tuntutan fleksibilitas dari organisasi besar tersebut. Berbagai fitur tersebut

membuat Oracle menjadi DBMS yang rumit dan sulit untuk dipelajari, namun itu adalah

harga yang harus dibayar untuk mendapatkan fleksibilitas yang dibutuhkan dalam

sistem informasi di organisasi yang berukuran besar.

Page 73: KATA PENGANTAR - neezasty.files.wordpress.com · 1 KATA PENGANTAR Kurikulum 2013 pada jenjang SMK didesain dengan tujuan membekali siswa agar berkompeten pada paket keahlian masing-masing

73

Kelebihan lainnya adalah skalabilitas yang mengacu pada kemampuan untuk terus

berkembang dengan penambahan sumber daya. Organisasi yang besar harus mampu

melakukan transaksi data dalam volume yang besar dan akan terus bertambah besar.

Jika dijalankan hanya pada satu server saja, MySQL memang bisa berjalan lebih cepat

daripada Oracle. Namun jika satu server sudah tidak bisa lagi menangani beban yang

terus bertambah besar, kinerja MySQL mengalami stagnasi karena keterbatasan server

tersebut. Namun Oracle mendukung fitur Grid yang dapat mendayagunakan lebih dari

satu server serta data storage dengan mudah dan transparan. Hanya dengan

menambahkan server atau data storage ke dalam Oracle Grid, maka kinerja dan

kapasitas Oracle dapat terus berkembang untuk mengikuti beban kerja yang terus

meningkat.

c) FireBird

Firebird adalah salah satu aplikasi RDBMS (Relational Database Management

System) yang bersifat open source. Awalnya perusahaan Borland pada tahun 2000

mengeluarkan versi beta dari aplikasi yaitu InterBase 6.0 dengan sifat open source.

Pengembangan basis data ini diawali dari Firebird 1, dengan merubah kode berbasis C

ke dalam bahasa C++ dan merupakan pembersihan kode secara besar-besaran. Firebird

1.5 merupakan rilis pertama dari codebase Firebird 2.

Firebird (juga disebut FirebirdSQL) adalah sistem manajemen basis data

relasional yang menawarkan fitur-fitur yang terdapat dalam standar ANSI SQL-99 dan

SQL-2003. RDBMS ini dapat berjalan dengan baik di Linux, Windows, maupun pada

sejumlah platform UNIX. Firebird ini dikembangkan oleh FirebirdSQL Foundation.

DBMS ini merupakan turunan dari Interbase versi open source milik Borland. Beberapa

kelebihan open source DBMS ini antara lain:

1. Firebird support dengan transaksi layaknya pada database komersial lainnya.

Sebuah transaksi bisa di-commit atau di-rollback dengan mudah. Firebird support

dengan savepoint pada transaksi dan bisa melakukan rollback kembali ke savepoint

(fungsi ini seperti fasilitas pada Oracle).

2. Firebird menggunakan sintaks standard untuk menciptakan suatu foreign key.

3. Firebird support row level locks, secara default Firebird menggunakan apa yang

disebut dengan multi-version

Page 74: KATA PENGANTAR - neezasty.files.wordpress.com · 1 KATA PENGANTAR Kurikulum 2013 pada jenjang SMK didesain dengan tujuan membekali siswa agar berkompeten pada paket keahlian masing-masing

74

4. Concurrency system. Ini artinya bahwa semua session pada database akan melihat

data yang lama sampai data yang baru sudah di-commit ke dalam database.

5. Firebird support stored procedure dan triggers dengan bahasa yang standard

sehingga tidak akan membingungkan bagi pengguna

6. Firebird bisa melakukan replikasi, solusi untuk replikasi kebanyakan dibuat oleh

pihak ketiga, tetapi sebenarnya teknik replikasi ini seperti konsep trigger yang

selalu memonitor adanya operasi insert, update atau delete ke dalam database.

7. Firebird support dengan multiple data file dan dapat menggunakan lebih dari satu

file sebagai single logic database.

8. Software untuk mengadministrasi mudah didapat karena banyak sekali software

untuk mengadministrasi data base Firebird, misalnya saja EMS IB Manager,

IBConsole, isql, FBManager, Marathon

9. Library connection untuk Firebird sudah tersedia seperti driver untuk ODBC, JDBC

bahkan .NET database provider dan PHP

10. Memiliki banyak komunitas di internet.

d) Microsoft SQL server

Microsoft SQL Server adalah perangkat lunak relational database management

system (RDBMS) yang didesain untuk melakukan proses manipulasi database

berukuran besar dengan berbagai fasilitas. Microsoft SQL Server merupakan produk

andalan Microsoft untuk database server. Kemampuannya dalam manajemen data dan

kemudahan dalam pengoperasiannya membuat RDBMS ini menjadi pilihan para

database administrator.

DBMS merupakan suatu system perangkat lunak untuk memungkinkan user

(pengguna) untuk membuat, memelihara, mengontrol, dan mengakses database secara

praktis dan efisien. Dengan DBMS, user akan lebih mudah mengontrol dan

mamanipulasi data yang ada. Sedangkan RDBMS atau Relationship Database

Management System merupakan salah satu jenis DBMS yang mendukung adanya

relationship atau hubungan antar table. RDBMS (Relational Database Management

System) adalah perangkat lunak untuk membuat dan mengelola database, sering juga

disebut sebagai database engine. Istilah RDBMS, database server-software, dan

database engine mengacu ke hal yang sama; sedangkan RDBMS bukanlah database.

Page 75: KATA PENGANTAR - neezasty.files.wordpress.com · 1 KATA PENGANTAR Kurikulum 2013 pada jenjang SMK didesain dengan tujuan membekali siswa agar berkompeten pada paket keahlian masing-masing

75

Beberapa contoh dari RDBMS diantaranya Oracle, Ms SQL Server, MySQL, DB2, Ms

Access.

e) Visual Foxpro 6.0

Pada tahun 1984, Fox Software memperkenalkan FoxBase untuk menyaingi

dBase II Ashton-Tate. Pada saat itu FoxBase hanyalah perangkat lunak kecil yang berisi

bahasa pemrograman dan mesin pengolah data. FoxPro memperkenalkan GUI

(Graphical Unit Interface) pada tahun 1989. FoxPro berkembang menjadi Visul FoxPro

pada tahun 1995. Kemampuan pemrograman prosedural tetap dipertahankan dan

dilengkapi dengan pemrograman berorietasi objek. Visual FoxPro 6.0 dilengkapi

dengan kemampuan untuk berinteraksi dengan produk desktop dan client/server lain dan

juga dapat membangun aplikasi yang berbasis Web. Dengan adanya Visual Studio,

FoxPro menjadi anggotanya. Sasaran utama Visual Studio adalah menyediakan alat

bantu pemrogrman dan database untuk mengembangka perangkat lunak yang memenuhi

tuntutan zaman.

Model data yang digunakan Visual FoxPro yaitu model relasional. Model

Relasional merupakan model yang paling sederhana sehingga mudah di pahami oleh

pengguna, serta merupakan paling popular saat ini. Model ini menggunakan sekumpulan

table berdimensi dua (yang disebut relasi atau table), dengan masing-masing relasi

tersusun atas tupel atau baris dan atribut. Relasi dirancang sedemikian rupa sehingga

dapat menghilangkan kemubajiran data dan mengunakan kunci tamu untuk

berhubungan dengan relasi lain.

f) Database Desktop Paradox

Database desktop merupakan suatu program “Add-Ins”, yaitu program terpisah

yang langsung terdapat pada Borland Delphi. Pada database desktop terdapat beberapa

DBMS yang terintegrasi di dalamnya antara lain Paradox 7, Paradox 4, Visual dBase,

Foxpro, Ms. SQL, Oracle, Ms. Acces, db2 dan interbase. Dari beberapa DBMS tersebut

kita akan memilih salah satu yaitu Paradox yang akan dibahas lebih lanjut, khususnya

Paradox 7. Dalam Paradox 7 ini, pada 1 file database hanya mengizinkan 1 tabel,

berbeda dengan DBMS lain yang mengizinkan beberapa tabel pada 1 file database

seperti pada Ms. Acces.

Page 76: KATA PENGANTAR - neezasty.files.wordpress.com · 1 KATA PENGANTAR Kurikulum 2013 pada jenjang SMK didesain dengan tujuan membekali siswa agar berkompeten pada paket keahlian masing-masing

76

D. Aktifitas Pembelajaran: Mengamati Berbagai Ragai Jenis DBMS

Dalam kegiatan ini peserta didik akan melakukan pengamatan melalui teks book secara

berkelompok, satu kelompok terdiri dari dua sampai tiga orang. Dalam kegiatan ini peserta didik

akan melakukan pengamatan melalui teks book terhadap berbagai ragam jenis DBMS. Bacalah

seluruh langkah pengamatan dibawah ini kemudian lakukan dengan cermat dan teliti dengan

perangkat yang telah disediakan.

1. Bentuk kelompok diskusi setiap kelompok terdiri dari tiga orang.

2. Dengan menggunakan fasilitas internet carilah sumber bacaan tentang berbagai ragam

jenis DBMS yaitu: micorosft SQL Server, Micorsoft access, Oracle dan MySQL. Catat

hasilnya (sumber bacaan) dalam bentuk tabel

3. Diskusikan dalam kelompok untuk berbagai ragam jenis DBMS sebagaimana telah

disebutkan pada langkah 2. Untuk setiap DBMS diskusikan tentang: 1) Industri pembuat

2) fitur-fitur yang ada dalam DBMS 3) Diagram atau gambar arsitektur DBMS. 4) versi

atau software database yang ada 5) kelebihan atau kekurangan setiap DBMS. Catat

hasilnya dalam bentuk tabel.

4. Komunikasikan hasilnya dalam kelompok dan buatlah kesimpulan.

5. Presentasikan hasil diskusi bersama-sama dengan kelompok lainnya dan guru

pembimbing.

E. Latihan /Tugas

Dalam test ini setiap peserta didik membaca dengan cermat dan teliti setiap butir soal

dibawah ini. Kemudian berdasarkan uraian materi diatas tulislah jawabannya pada lembar

jawaban test formatif yang telah disediakan.

1. Jelaskan secara singkat definisi DBMS, RDBMS dan apa perbedaan keduanya?

...................................................................................................................

...................................................................................................................

...................................................................................................................

...................................................................................................................

...................................................................................................................

.................................................................................................................

...................................................................................................................

...................................................................................................................

Page 77: KATA PENGANTAR - neezasty.files.wordpress.com · 1 KATA PENGANTAR Kurikulum 2013 pada jenjang SMK didesain dengan tujuan membekali siswa agar berkompeten pada paket keahlian masing-masing

77

...................................................................................................................

...................................................................................................................

...................................................................................................................

...................................................................................................................

...................................................................................................................

...................................................................................................................

...................................................................................................................

...................................................................................................................

...................................................................................................................

...................................................................................................................

...................................................................................................................

...................................................................................................................

...................................................................................................................

...................................................................................................................

...................................................................................................................

...................................................................................................................

...................................................................................................................

2. Sebutkan berbagai ragam jenis perangkat lunak DBMS baik yang bersifat komersial dan

oepn source?

.........................................................................................................:........

...................................................................................................................

...................................................................................................................

...................................................................................................................

...................................................................................................................

...................................................................................................................

...................................................................................................................

...................................................................................................................

...................................................................................................................

...................................................................................................................

...................................................................................................................

...................................................................................................................

...................................................................................................................

...................................................................................................................

Page 78: KATA PENGANTAR - neezasty.files.wordpress.com · 1 KATA PENGANTAR Kurikulum 2013 pada jenjang SMK didesain dengan tujuan membekali siswa agar berkompeten pada paket keahlian masing-masing

78

.........................................................................................................:........

...................................................................................................................

...................................................................................................................

...................................................................................................................

...................................................................................................................

...................................................................................................................

...................................................................................................................

...................................................................................................................

...................................................................................................................

...................................................................................................................

...................................................................................................................

...................................................................................................................

...................................................................................................................

...................................................................................................................

...................................................................................................................

...................................................................................................................

F. Rangkuman

Sistem manajemen basis data (database management system, DBMS), atau sering disingkat

SMBD, adalah suatu sistem atau perangkat lunak yang dirancang untuk mengelola suatu basis

data dan menjalankan operasi terhadap data yang diminta banyak pengguna.

Sebuah sistem manajemen basis data relasional atau dikenal sebagai relational database

management system (RDBMS) adalah sebuah program komputer (atau secara lebih tipikal adalah

seperangkat program komputer) yang dirancang untuk mengatur atau mengelola sebuah basis data

sebagai sekumpulan data yang disimpan secara terstruktur, dan melakukan operasi-operasi data

atas permintaan penggunanya.

Hukum cood adalah suatu ketentuan atau aturan dan definisi standar dari sebuah sistem basis

data relasional, yang diperkenalkan oleh Edgar F. Codd. Hukum Codd terdiri dari dua belas

kriteria atau ketentuan. Software atau perangkat lunak DBMS yang sering digunakan dalam

aplikasi program dan sangat populer adalah MySQL, MS SQL Server, Oracle, IBM DB/2, dan

PostgreSQL DBMS yang bersifat open source: antara lain : Cloudscape, Derby, Firebird, H2,

HSQLDB, Ingres, MaxDB, MonetDB, MySQL, PostgreSQL, SQLite, tdbengine

Page 79: KATA PENGANTAR - neezasty.files.wordpress.com · 1 KATA PENGANTAR Kurikulum 2013 pada jenjang SMK didesain dengan tujuan membekali siswa agar berkompeten pada paket keahlian masing-masing

79

PEMBELAJARAN 7:

BASIS DATA RELATIONAL

A. Tujuan Pembelajaran

Setelah mengikuti kegiatan belajar ini diharapkan:

Memperoleh pemahaman tentang sistem manajemen database relational (RDBMS) dan

sistem objek manajemen database relasional (ORDBMS)

Memperoleh pemahaman konsep dasar database relational

Mengkomunikasikan gagasan database menggunakan model data yang sesuai

B. Indikator pencapaian Kompetensi

Menggambar struktur table relational

Membuat model menggunakan kovensi entitas

Berkomunikasi dengan RDBMS menggunakan pernyataan SQL.

Mengelompokkan pernyataan-pernyataan SQL dalam kelompok DDL, DML, DCL dan

Transaction control.

C. Uraian materi

1. Konsep Basis Data Relational

Dr. E.F. Codd pada tahun 1970 telah memperkenalkan model relasional sistem

database yang merupakan dasar untuk Relational Database Management System (RDBMS).

Sebelum konsep database relasional telah digunakan dua model database yaitu Network dan

Hierarchical Database. RDMBS memiliki kemudahan dalam penggunaannya dan memiliki

fleksibilitas dalam struktur, sehingga sangat cepat populer ditambah dengan beberapa vendor

yang inovatif dalam membantu mengembangkan aplikasi-aplikasi yang powerfulserta

produk-produk yang menawarkan solusi. Dalam database relasional, data disimpan dalam

bentuk relasi atau tabel dua dimensi, dan antartabel satu dengan tabel yang lainnya terdapat

hubungan atau relationship.

Komponen-komponen model ralasional meliputi : Kumpulan objek yang memiliki

keterkaitan atau relasional antar penyimpan data, Set operator yang dapat melakukan relasi

Page 80: KATA PENGANTAR - neezasty.files.wordpress.com · 1 KATA PENGANTAR Kurikulum 2013 pada jenjang SMK didesain dengan tujuan membekali siswa agar berkompeten pada paket keahlian masing-masing

80

untuk membuat relasi yang lainnya, dan Integritas datauntuk akurasidan konsistensi. Untuk

membuat struktur tabel, mengisi data ke tabel, mengubah data dan menghapus data dari tabel

diperlukan software RDBMS, sedangkan perintah yang digunakan disebut Structure Query

Language (SQL) sehingga setiap software RDBMS dapat digunakan untuk menjalankan

perintah SQL

2. Definisi Database Relasional

Sebuah database relasional menggunakan hubungan atau tabel dua dimensi untuk

menyimpan informasi. Sebagai contoh: Kita ingin menyimpan informasi tentang semua

karyawan yang ada pada salah satu perusahaan. Dalam sebuah database relasional, kita

membuat beberapa tabel untuk menyimpan bagian-bagian informasi yang berbeda tentang

karyawan yang bekerja diperusahaan tersebut, misalnya tabel yang menyimpan informasi

tentang karyawan, tabel yang menyimpan informasi tentang departemen, tabel yang

menyimpan informasi tentang gaji.

Gambar 7. 1 Gambaran Relasional Database

3. Model Data

Modelmerupakan landasansebuah desain. Sebelum sebuah mobil diproduksi, terlebih

dahalu para perancang membuatmodelmobil dan bekerja secara rinci dan detail pada model

mobil tersebut.Dalam cara yang sama, perancang sistemmengembangkan modeluntuk

mengeksplorasi ide-ide dan meningkatkan pemahaman desain database. Tujuan sebuah

Model adalah membantu mengkomunikasikan konsep- konsep yang ada dipikiran orang.

Page 81: KATA PENGANTAR - neezasty.files.wordpress.com · 1 KATA PENGANTAR Kurikulum 2013 pada jenjang SMK didesain dengan tujuan membekali siswa agar berkompeten pada paket keahlian masing-masing

81

Model dapat digunakan untuk melakukan hal berikut: menyampaikan/mengkomunikasikan,

mengkategorikan, menggambarkan, menentukan, menyelidiki, mengembangkan,

menganalisis, dan meniru. Model yang baik adalah model yang cocok dalam banyak

kegunaan, dapat dipahami oleh pengguna akhir, dan berisi detail yang cukup untuk

pengembang dalam membangun sistem data base.

Gambar 7. 2 Contoh Skenario Model Data

4. Model Hubungan Entitas (Entity Relationship Model)

Dalamsistem yang efektif, data dibagi menjadi kategori diskrit atau entitas. Sebuah

hubungan entitas (ER) model adalah sebuah ilustrasi dari berbagai entitas dalam bisnis dan

hubungan diantara mereka. Model ER berasal dari spesifikasi bisnis atau narasi dan

dibangun selama tahap analisis siklus hidup pengembangan sistem (System Development

Life Cycle).

Manfaat Model ER

a) Informasi Dokumen bagi organisasi dalam format yang jelas tepat.

b) Memberikan gambaran yang jelas tentang ruang lingkup kebutuhan informasi.

c) Menyediakan peta bergambar yang mudah dipahami untuk desain database.

d) Menawarkan kerangka kerja yang efektif untuk mengintegrasikan beberapa ap-

likasi.

Komponen Kunci

a. Entitas: Suatu hal yang penting tentang informasi yang perlu diketahui. Contohnya

adalah departemen, karyawan, dan pesanan.

b. Atribut: Sesuatu yang menggambarkan atau memenuhi syarat suatu entitas. Sebagai

Page 82: KATA PENGANTAR - neezasty.files.wordpress.com · 1 KATA PENGANTAR Kurikulum 2013 pada jenjang SMK didesain dengan tujuan membekali siswa agar berkompeten pada paket keahlian masing-masing

82

contoh, untukentitas karyawan, atributnya adalah: nomor karyawan, nama, jabatan, tanggal

perekrutan, nomor departemen, dan sebagainya. Setiap atribut yang baik adalah diperlukan

atau opsional. Pernyataan ini disebut optionality.

c. Hubungan: Hubungan atau relationship adalah sebuah asosiasi antara entitasdan de-

rajat.Contohnya adalah karyawan dan departemen, dan pesanan dan item barang.

Gambar 7. 3 Model Hubungan Entitas (Entity Relationship Model)

5. Konvensi Model Hubungan Entitas

Konvensi Model ER Entitas

Untuk mewakili entitas dalam model, menggunakan konvensi sebagai berikut :

Singular, nama entitas yang unik

Nama entitas dalam huruf besar

Kotakdengan garis tipis.

Nama sinonim opsional dengan huruf besar didalam tanda kurung: ().

Atribut

Untuk mewakili atribut dalam model, menggunakan konvensi sebagai berikut :

Nama Singular dalam huruf kecil.

Asterisk(*) tanda untuk atribut wajib (yaitu, nilai-nilai yang harus diketahui).

Karakter"o" tanda untuk atribut opsional (yaitu, nilai-nilai yang mungkin

dikenal).

Page 83: KATA PENGANTAR - neezasty.files.wordpress.com · 1 KATA PENGANTAR Kurikulum 2013 pada jenjang SMK didesain dengan tujuan membekali siswa agar berkompeten pada paket keahlian masing-masing

83

Hubungan Multi Tabel

Setiap tabel berisi data yang menggambarkan secara tepat satu entitas. Sebagai contoh,

tabel EMPLOYEES berisi informasi tentang karyawan. Kategori data yang tercantum di

bagian atas setiap tabel, dankasus- kasus individu tercantum di bawah tabel. Dengan

menggunakan formattabel, dapat dengan mudah memvisualisasikan, memahami, dan

menggunakan informasi. Karena data tentang entitas yang berbeda disimpan dalam tabel

yang berbeda, sehingga perlu untuk menggabungkan dua atau lebih tabel dalam

menyelesaikan permasalahan tertentu. Sebagai contoh, untuk mengetahui lokasi departemen

mana seorang karyawan bekerja. Dalam skenario ini, memerlukan informasi dari tabel

EMPLOYEES (yang berisi data tentang karyawan) dan tabel DEPARTMENTS (yang berisi

informasi tentang departemen). Dengan RDBMS, seseorang dapat menghubungkan data

yang berada dalam satu tabel dengan data yang berada di tabel lain menggunakan

foreign key. Foreign key adalah kolom (atau setkolom) yang mengacu pada Primary key

dalam tabel yang sama atau tabel lain. Data dalam dua tabel yang terpisah dapat diorganisasi

menjadi informasi baru yang dapat dikelola secara terpisah.

Gambar 7. 4 Gambar Hubungan ER Multi Tabel

6. Terminologi Database Relasional

Sebuah database relasional dapat berisi satu atau banyak tabel. Sebuah table

merupakanstruktur penyimpanan dasar dari sebuah RDBMS. Sebuah tabelmemiliki

semuadata yang diperlukan tentang sesuatu di dunia nyata, seperti karyawan, faktur, atau

Page 84: KATA PENGANTAR - neezasty.files.wordpress.com · 1 KATA PENGANTAR Kurikulum 2013 pada jenjang SMK didesain dengan tujuan membekali siswa agar berkompeten pada paket keahlian masing-masing

84

pelanggan.

Tabel

Didalam sistem relasional database data dinyatakan dengan menggunakan tabel

(relations). Sebuah tabel mempunyai struktur seperti dabawah ini,

Baris ( record )

Sebuah tabel harus diberi nama secara unik sebagai identitasnya dan terdiri dari

beberapa baris sebagai penyimpanan informasi, dan masing- masing baris berisi satu record.

Sebuah tabel dapat mempunyai sebuah kolom atau lebih. Sebuah kolom memiliki sebuah

nama dan tipe data yang diberlakukan dan merupakan deskripsi atribut pada record.Struktur

tabel yang disebut juga relation schema, ditentukan oleh atribut- atributnya. Tipe informasi

yang tersimpan di dalam tabel ditentukan oleh tipe data yang terdapat pada atribut-atributnya

pada saat tabel dibuat.

Sebuah tabel dapat mempunyai lebih dari 254 kolom yang mempunyai tipe data yang

sama atau tipe data yang berbeda sesuai dengan penempatan values (domain).

Kemungkinan-kemungkinan domain yang dipergunakan adalah alphanumeric data (strings),

numbers, dan date formats. ORACLE menawarkan tipe-tipe data dasar seperti di bawah ini:

1. Char (n): Fixed-lenght character data (strings), mendefinisikan string sepan-

jang n karakter. Nilai maksimum untuk n adalah 255 byte (....... di ORACLE 9i). Bila n tidak

dituliskan, maka panjang karakteryang berlaku adalah 1.

contoh: char(40).

2. Varchar2 (n) : Variable-lenght character strings, mendefiniskan string yang

panjangnya berubah-ubah sesuai dengan kebutuhan dan dibatasi sebanyak karakter n. Nilai

n maksimum adalah 2000 (....... di ORACLE 9i). Hanya banyaknya byte yang digunakan

saja yang tersimpan pada memori.

contoh: varchar2(80).

3. Number (o,d) : Numeric data type , mendefinisikan angka integerdan riel, o

= jumlah digit, d = jumlah digit yang berada dibelakang koma. Nilai maksimum: o = 38, d

= -84 sampai +127.

kolom 1 kolom 2 ……….. kolom n

……… ………

Page 85: KATA PENGANTAR - neezasty.files.wordpress.com · 1 KATA PENGANTAR Kurikulum 2013 pada jenjang SMK didesain dengan tujuan membekali siswa agar berkompeten pada paket keahlian masing-masing

85

contoh: number (8), number (5,2).

Number (5,2) nilainya tidak dapat lebih dari 999.99 , jika melebihi nilai maksimum

tersebut maka akan menjadi kesalahan. Tipe data yang berasal dari number adalah int[eger],

dec[imal], smallint dan real.

4. Date: Date data type untuk menempatkan atau mendefinisikan tanggal, bulan, ta-

hun, hari, jam, menit dan detik. Format keadaan awal ( default ) untuk date adalah : DD-

MMM-YY.

Contoh : ’10-FEB-94’,’29-NOV-98’.

5. long: mendefinisikan tipe data binary, panjangnya karakter maksimum adalah 2GB.

Setiap tabel hanya diperbolrhkan satu kolom saja yang mempunyai tipe long.

Catatan:

Di dalam ORACLE–SQL tidak ada tipe data boolean, tetapi dengan data yang sama

dapat menggunakan char(1) atau number(1).

Selama tidak terdapat ketentuan/hambatan lain yang membatasi kemungkina values

pada atribut, dapat digunakan special value yaitu null (untuk sesuatu yang tidak diketahui).

Nilai ini tidak sama dengan angka 0, dan juga tidak sama dengan angka kosong.

Gambar 7. 5 Record pada Tabel EMPLOYEES

Page 86: KATA PENGANTAR - neezasty.files.wordpress.com · 1 KATA PENGANTAR Kurikulum 2013 pada jenjang SMK didesain dengan tujuan membekali siswa agar berkompeten pada paket keahlian masing-masing

86

Gambar 7.5 menunjukkan isi tabel atau relasi EMPLOYEES. Huruf-huruf

menunjukkan hal-hal sebagai berikut:

a. Baris tunggal (atau tuple) mewakili semua data yang dibutuhkan untuk kar-

yawan tertentu. Setiap baris dalam sebuah tabel harus diidentifikasi oleh primary key, yang

memungkinkan tidak ada duplikasi baris. Urutan baris tidak signifikan; menentukan urutan

baris saat data diambil.

b. Sebuah kolom ataua tribut yang berisi nomor karyawan. Jumlah karyawan

mengidentifikasi karyawan yang unik dalam tabel EMPLOYEES. Dalam contoh ini, kolom

nomor karyawan yang ditunjuk sebagai primary key. Sebuah primary key harus mengandung

nilai, dan nilai harus unik.

c. Sebuah kolomyang bukan key value. Sebuah kolom merupakan atau merep-

resentasikan salah satu jenis data dalam tabel; dalam contoh ini, data adalah gaji semua kar-

yawan. Urutan kolom tidak signifikan ketika menyimpan data; menentukan urutan kolom

saat data diambil.

d. Sebuah kolom yang berisi nomor departemen, yang juga merupakan foreign

key. Foreign key adalah kolom yang mendefinisikan bagaimana tabel berhubungan satu

sama lain. Foreign key mengacu pada primary key atau kunci unik di tabel yang sama atau

di tabel lain. Dalam contoh, DEPARTMENT_ID secara unik mengidentifikasi sebuah de-

partemen dalam tabel DEPARTMENTS.

e. Sebuah field dapat ditemukan di persimpangan dari baris dan kolom. Hanya

ada satu nilai di dalamnya.

f. Sebuah field mungkin tidak memiliki nilai di dalamnya. Ini disebut nilai null.

Dalam tabel EMPLOYEES,hanya karyawan yang memiliki peran perwakilan penjualan

memiliki nilai di COMMISSION_PCT (komisi).

7. Properti Database Relasional

Dalam sebuah relasional database, pengguna tidak menentukan rute akses ke tabel, dan

tidak perlu tahu bagaimana data diatur secara fisik. Untuk mengakses database, cukup

dengan mengeksekusi perintah- perintah atau pernyataan SQL, yang merupakan American

National Standards Institute (ANSI) bahasa standar untuk operasi relasional database. SQL

berisi satu set operator-operator yang cukup besar untuk membagi dan mempertautkan

hubungan. Database dapat dimodifikasi dengan menggunakan pernyataan SQL.

Page 87: KATA PENGANTAR - neezasty.files.wordpress.com · 1 KATA PENGANTAR Kurikulum 2013 pada jenjang SMK didesain dengan tujuan membekali siswa agar berkompeten pada paket keahlian masing-masing

87

Berkomunikasi dengan RDBMS menggunakan SQL

Structured Query Language

Menggunakan SQL, pengguna dapat berkomunikasi dengan server data base. SQL

memiliki beberapa keuntungan: efisien, mudah untuk dipelajari dan digunakan, dan

memiliki fungsi-fungsi yang sangat lengkap (menentukan, mengambil, dan memanipulasi

data dalam tabel).

Gambar 7. 6 Komunikasi DBMS Menggunakan SQL

Pernyataan-pernyataanSQL

Transaction Control

COMMIT

ROLLBACK

SAVEPOINT

Data Definition Language (DDL)

CREATE

ALTER DROP

RENAME

TRUNCATE

COMMENT

Data Manipulation Language (DML)

SELECT

INSERT

UPDATE

DELETE

MERGE

Data Control Language (DCL) GRANT

REVOKE

Page 88: KATA PENGANTAR - neezasty.files.wordpress.com · 1 KATA PENGANTAR Kurikulum 2013 pada jenjang SMK didesain dengan tujuan membekali siswa agar berkompeten pada paket keahlian masing-masing

88

Pernyataan Deskripsi

SELECT

INSERT

UPDATE

DELETE

MERGE

Mengambil datadari database, mengisi

baris baru, merubah baris yang ada, dan

menghapus baris yang tidak diinginkan dari

tabel dalam database secara berturut-turut,

dikenal sebagai data manipulation

language (DML).

CREATE

ALTER

DROP

RENAME

TRUNCATE

COMMENT

Membuat, merubah, dan menghapus

struktur data daritabel, dikenal sebagai data

definition language (DDL).

GRANT

REVOKE

Memberika natau menghilangkan hak akses

ke data base maupun struktur didalamnya.

COMMIT

ROLLBACK

SAVEPOINT

Mengelola perubahan yang dibuatoleh

pernyataanDML. Perubahan data bisa

dikelompokkan bersama ke dalam

transaksilogis.

D. AKTIVITAS PEMBELAJARAN

Aktivitas pada kegiatan pembelajaran 1, mencakup topik-topik berikut:

a. Pengenalan konsep DBMS dan model hubungan entitasnya

b. Pengenalan metode komunikasi DBMS menggunakan SQL

c. Pengenalan klasifikasi perintah SQL untuk berkomunikasi dengan DBMS

Page 89: KATA PENGANTAR - neezasty.files.wordpress.com · 1 KATA PENGANTAR Kurikulum 2013 pada jenjang SMK didesain dengan tujuan membekali siswa agar berkompeten pada paket keahlian masing-masing

89

E. LATIHAN / TUGAS

1. ER (hubungan entitas) Model merepresentasikan suatu ilustrasi dari berbagai entitas

dalam hal :

a. Hubungandi antara mereka

b. Komponen entitas

c. Hubungan antar DBMS

d. Hubungan matriks keduanya

2. Penggunaan tanda kurung “()” pada ER Model merepresentasikan suatu ilustrasi enti-

tas yang menunjukkan

a. Akronim suatu database

b. Akronis suatu tabel

c. Sinomin suatu database

d. Sinonim suatu tabel

3. Tipe data boolean pada Oracle tidak didukung, sebagai gantinya Oracle menyediakan

model representasi tipe boolean dengan cara

a. Menggunakan tipe data varhcar(n)

b. Menggunakan tipe data number(1)

c. Menggunakan tipe data int(1)

d. Menggunakan tipe data long int(1)

4. Perintah SQL COMMENT termasuk kategori perintah SQL dengan tipe

a. Data Definition Language (DDL)

b. Data Manipulation Language (DML)

c. Transaction Control

d. Data Control Language (DCL)

5. Query berikut yang tidak mampu mengelola perubahan hasil operasi DML adalah

a. COMMIT

b. ROLLBACK

c. SAVEPOINT

d. SELECT

Page 90: KATA PENGANTAR - neezasty.files.wordpress.com · 1 KATA PENGANTAR Kurikulum 2013 pada jenjang SMK didesain dengan tujuan membekali siswa agar berkompeten pada paket keahlian masing-masing

90

F. RANGKUMAN

Pada kegiatan pembelajaran, telah dipelajari tentang konsep dasar database relasional dan

model data yang digunakan untuk menyampaikan atau mengkomunikasikan, mengkategorikan,

menggambarkan, menentukan, memenyelidiki, mengembangkan, menganalisis, dan meniru. Model

yang baik adalah model yangcocok dalam banyak kegunaan,dapat dipahamioleh pengguna akhir,

dan berisidetail yang cukupuntuk pengembang dalam membangun sistem database. Poin penting

yang telah dipelajari pada kegiatan pembelajaran 1 ini adalah pengelompokan pernyataan SQL

kedalam kelompok DML, DDL, DCL, dan Transaction Control. Database didasarkan pada objek

relasional sistem manajemen database. Database relasional terdiri dari relasional,dikelola oleh

operasi relasional, dan diaturoleh integrity constraints. Dengan server Oracle, pengguna dapat me-

nyimpan dan mengelola informasi dengan menggunakan bahasa SQL.

Page 91: KATA PENGANTAR - neezasty.files.wordpress.com · 1 KATA PENGANTAR Kurikulum 2013 pada jenjang SMK didesain dengan tujuan membekali siswa agar berkompeten pada paket keahlian masing-masing

91

PEMBELAJARAN 8:

SQL (STRUCTURE QUERY LANGUAGE)

A. Tujuan Pembelajaran

Setelah mengikuti kegiatan belajar ini diharapkan:

Memperoleh pemahaman tentang pengertian SQL

Memperoleh pemahaman konsep dasar SQL

Mempraktikan proses intallasi server SQL

B. Indikator pencapaian Kompetensi

Menjelaskan pengertian SQL dengan baik

Menjelaskan komponen server SQL dengan baik

Melakukan installasi server SQL dengan tepat.

C. Uraian materi

1. Pengertian SQL

SQL (Structured Query Language) adalah sebuah bahasa yang dipergunakan untuk

mengakses data dalam database relasional. Bahasa ini secara de facto merupakan bahasa

standar yang digunakan dalam manajemen database relasional. Saat ini hampir semua server

database yang ada mendukung bahasa ini untuk melakukan manajemen datanya.Sejarah

SQL dimulai dari artikel seorang peneliti dari IBM bernama EF Codd yang membahas

tentang ide pembuatan database relasional pada bulan Juni 1970. Artikel ini juga membahas

kemungkinan pembuatan bahasa standar untuk mengakses data dalam database tersebut.

Bahasa tersebut kemudian diberi nama SEQUEL (Structured English Query

Language).Setelah terbitnya artikel tersebut, IBM mengadakan proyek pembuatan database

relasional berbasis bahasa SEQUEL. Akan tetapi, karena permasalahan hukum mengenai

penamaan SEQUEL, IBM pun mengubahnya menjadi SQL. Implementasi database

relasional dikenal dengan System/R.Di akhir tahun 1970-an, muncul perusahaan bernama

Oracle yang membuat server database populer yang bernama sama dengan nama

perusahaannya. Dengan naiknya kepopuleran Oracle, maka SQL juga ikut populer sehingga

saat ini menjadi standar de facto bahasa dalam manajemen database. Kebanyakan DBMS

Page 92: KATA PENGANTAR - neezasty.files.wordpress.com · 1 KATA PENGANTAR Kurikulum 2013 pada jenjang SMK didesain dengan tujuan membekali siswa agar berkompeten pada paket keahlian masing-masing

92

saat inimendukung bahasa SQL demikian juga bahasa-bahasa pemograman generasi ke-4

yang populer di indonesia seperti Visual Basic,Borland Delphi,Visual C++,dan

sebagainya.SQL saat ini telah mapan menjadi bahasa standar untuk database bertipe

relasional,selain itu OQL (Object Query Language) yang merupakan perkembangan lebih

lanjut dari SQL saat ini sering digunakan untuk query-query pada database berorietasi objek

(OODBMS/Object Oriented Database Management System)Pada tahun 1986,ANSI

(American National Standart Institute) dan ISO (International Organization for

Standardization)mempublikasikan SQL standar yang dinamai SQL86.IBM

mempublikasikan SQL versinya sendiri yaitu:SAA-SQL (System Application Architecture

database Interfase-Structured Query Language) pada tahun 1987-an. Kemudian ANSI

mempublikasikan standart perluasanSQL yaitu SQL-89 pada tahun 1989.Standar tersebut

kemudian diperbaiki lagi pada tahun 1992. Versi terakhir dikenal dengan SQL92. Pada tahun

1999 dikeluarkan standar baru yaitu SQL99 atau disebut juga SQL99, akan tetapi

kebanyakan implementasi mereferensi pada SQL92. Saat ini sebenarnya tidak ada server

database yang 100% mendukung SQL92. Hal ini disebabkan masing-masing server memiliki

dialek masing-masing.

2. Komponen Server SQL

Komponen dasar SQL mencakup pernyataan, nama, tipe data, konstanta,

ekspresi, dan fungsi bawaan.

1. Pernyataan

Pernyataan adalah perintah SQL yang meminta sesuatu tindakan kepada DBMS.

SQL memiliki kira-kira 30 pernyataan. Beberapa pernyataan dasar SQL dapat

dilihat pada tabel berikut:

Pernyataan Keterangan

ALTER Mengubah struktur tabel

COMMIT Mengakhiri sebuah eksekusi transaksi

CREATE Menciptakan tabel, indeks atau

pandangan

DELETE Menghapus baris pada tabel

DROP Menghapus tabel, indeks atau

pandangan

Page 93: KATA PENGANTAR - neezasty.files.wordpress.com · 1 KATA PENGANTAR Kurikulum 2013 pada jenjang SMK didesain dengan tujuan membekali siswa agar berkompeten pada paket keahlian masing-masing

93

GRANT Menugaskan hak terhadap database

kepada pengguna atau grup pengguna

INSERT Menambahkan sebuah baris pada tabel

REVOKE Membatalkan hak terhadap database

ROLLBACK Mengembalikan ke keadaan semula

sekiranya suatu

transaksi gagal dilaksanakan

SELECT Memilih baris dan kolom pada tabel

UPDATE Mengubah nilai pada sebuah baris

2. Nama

Nama digunakan sebagai identitas bagi objek-objek pada DBMS. Contoh objek

pada DBMS adalah tabel, kolom dan pengguna.

3. Tipe Data

Setiap data memiliki tipe data. Berikut ini adalah tipe data dalam MySQL : Tipe

data untuk numerik :

Tipe Keterangan Range Nilai

TINYINT Nilai integer yang sangat

kecil

Signed : -128 s.d. 127

Unsigned : 0 s.d. 255

SMALLINT Nilai integer yangbkecil Signed : -32768 s.d. 32767

Unsigned : 0 s.d. 65535

MEDIUMINT Integer dengan nilai

medium

Signed : -8388608 s.d. 8388607

Unsigned : 0 s.d. 16777215

INT Integer dengan nilai

standar

Signed : -2147483648 s.d.

2147483647

Unsigned : 0 s.d. 4294967295

BIGINT Integer dengan nilai besar Signed : -

9223372036854775808 s.d.

9223372036854775807

Unsigned : 0 s.d.

Page 94: KATA PENGANTAR - neezasty.files.wordpress.com · 1 KATA PENGANTAR Kurikulum 2013 pada jenjang SMK didesain dengan tujuan membekali siswa agar berkompeten pada paket keahlian masing-masing

94

18446744073709551615

FLOAT Bilangan decimal dengan

single- precission

minimum ± 1.175494351e-38

maksimum ± 3.402823466e+38

DOUBLE Bilangan desimal dengan

double- precission

minimum ±

2.2205738585072014e-308

maksimum ±

1.7976931348623457e+308

DECIMAL

(M,D)

Bilangan float (desimal)

yang dinyatakan sebagai

string. M adalah jumlah

digit yang disimpan dalam

suatu kolom, N adalah

jumlah digit dibelakang

koma

Tergantung pada nilai M dan D

Keterangan : Signed dan Unsigned adalah atribut untuk tipe data numerik

- Signed : data yang disimpan dalam suatu kolom dapat berupa data negatif dan

positif.

- Unsigned : digunakan agar data yang dimasukkan bukan data negatif (>=0).

Tipe data float tidak dapat dinyatakan dengan unsigned.

Tipe data string :

Tipe Keterangan Ukuran

Maksimum

CHAR(n) String karakter dengan panjang

yang tetap, yaitu n

1 M byte

VARCHAR(n) String karakter dengan panjang

yang tidak tetap, maksimum n.

1 M byte

Page 95: KATA PENGANTAR - neezasty.files.wordpress.com · 1 KATA PENGANTAR Kurikulum 2013 pada jenjang SMK didesain dengan tujuan membekali siswa agar berkompeten pada paket keahlian masing-masing

95

TINYBLOB BLOB (Binary Large Object) yang

sangat kecil

28-1 byte

BLOB BLOB berukuran kecil 216-1 byte

MEDIUMBLOB BLOB berukuran sedang 224-1 byte

LONGBLOB BLOB berukuran besar 232-1 byte

TINYTEXT String teks yang sangat kecil 28-1 byte

TEXT String teks berukuran kecil 216-1 byte

MEDIUMTEXT String teks berukuran

medium(sedang)

224-1 byte

LONGTEXT String teks berukuran besar 232-1 byte

ENUM Enumerasi, kolom dapat diisi

dengan satu member enumerasi

65535 anggota

SET Himpunan, kolom dapat diisi

dengan beberapa nilai anggota

himpunan

64 anggota

himpunan

Tipe data tanggal dan jam :

Tipe Range Format

DATE “1000-01-01” s.d. “9999-12-31” “0000-00-00”

TIME “-832:59:59” s.d.“838:59:59” “00:00:00”

DATETIME “1000-01-01 00:00:00”s.d. “9999-12-

3123:59:59”

“0000-00-00

00:00:00”

4. Konstanta

Konstanta menyatakan nilai yang tetap.

5. Ekspresi

Ekspresi adalah segala sesuatu yang menghasilkan nilai. Ekspresi digunakan

untuk menghitung nilai.

Contoh : harga*jumlah+2

Page 96: KATA PENGANTAR - neezasty.files.wordpress.com · 1 KATA PENGANTAR Kurikulum 2013 pada jenjang SMK didesain dengan tujuan membekali siswa agar berkompeten pada paket keahlian masing-masing

96

Simbol-simbol yang dapat digunakan pada ekspresi aritmatika.

Simbol Keterangan

* Perkalian

/ Pembagian

+ Penjumlahan

- Pengurangan

6. Aggregate Functions (Fungsi Agregat)

Fungsi adalah sebuah subprogram yang menghasilkan suatu nilai jika dipanggil.

Fungsi agregat adalah fungsi standar di dalam SQL, suatu fungsi yang digunakan

untuk melakukan summary, fungsi statistik standar yang dikenakan pada suatu

tabel atau query.

a. AVG(ekspresi)

Fungsi ini digunakan untuk mencari rata-rata nilai dalam suatu kolom dari

suatu tabel atau ekspresi. Ekspresi dalam fungsi AVG umumnya adalah

nama kolom. Kolom yang dicari nilai rata-ratanya adalah kolom dengan

tipe data numerik.

b. COUNT(x)

Fungsi ini digunakan untuk menghitung jumlah record (baris) dari suatu

kolom dari suatu tabel. X adalah nama kolom yang ingin dicari jumlah

barisnya.

c. MAX(ekspresi)

Fungsi ini digunakan untuk mencari nilai terbesar dari suatu kolom dari

suatu tabel. Kolom yang dicari nilai terbesarnya memiliki tipe data numerik.

d. MIN(ekspresi)

Fungsi ini digunakan untuk mencari nilai terkecil dari suatu kolom dari suatu

tabel. Kolom yang dicari nilai terkecilnya memiliki tipe data numerik.

e. SUM(ekspresi)

Fungsi ini digunakan untuk mendapatkan nilai total dari suatu kolom pada

suatu tabel.

Page 97: KATA PENGANTAR - neezasty.files.wordpress.com · 1 KATA PENGANTAR Kurikulum 2013 pada jenjang SMK didesain dengan tujuan membekali siswa agar berkompeten pada paket keahlian masing-masing

97

3. Installasi Server SQL

DASAR PENGGUNAAN

Sebelum menggunakan MySQL, pastikan MySQL sudah ter install di komputer atau

laptop. Agar latihan anda sama dengan yang ada dibuku. Sebaiknya ikuti aplikasi

yang digunkan di buku.

INSTALASI XAMPP

Aplikasi yang digunakan sebagai bahan belajar adalah XAMPP. Download XAMPP di

lokasi sebagai berikut:

https://www.apachefriends.org/download.html

Install XAMPP di di drive C atau di D lapto atau komputer anda. Jalankan XAMPP

menggunakan XAMPP control. Pastikan service dari MySQL berjalan dengan baik.

Setelah XAMPP berhasil dijalankan maka buka aplikasi Command Prompt di windows

dengan cara ketik [cmd] di pencarian start windows 10.

Pilih command prompt

Page 98: KATA PENGANTAR - neezasty.files.wordpress.com · 1 KATA PENGANTAR Kurikulum 2013 pada jenjang SMK didesain dengan tujuan membekali siswa agar berkompeten pada paket keahlian masing-masing

98

Setelah terbuka jalankan MySQL dengan mengetik

Lokasi C atau D sesuai dengan XAMPP yang ada di komputer anda. XAMPP yang ada

di buku diletakan di C. Jalankan MySQL dengan mengetik

Karena password default atau bawaan XAMPP nya kosong, langsung

ketik enter saja. Jika MySQL berjalan maka akan tampil

Untuk keluar dari MySQL gunakan perintah;

MEMERIKSA MYSQL JALAN ATAU TIDAK

Untuk mengecek MySQL berjalan atau tidak, pastikan keluar dari MySQL dulu

kemudian gunakan perintah dibawah. Tekan enter jika passwordnya kosong;

Page 99: KATA PENGANTAR - neezasty.files.wordpress.com · 1 KATA PENGANTAR Kurikulum 2013 pada jenjang SMK didesain dengan tujuan membekali siswa agar berkompeten pada paket keahlian masing-masing

99

CEK VERSI MYSQL

Kita bisa mengecek versi MySQL yang digunakan menggunakan perintah; Pastikan

sudah keluar dari MySQL sebelum mengecek versinya.

Tampilan hasil pengecekan versi MySQL

MENAMPILKAN HELP MYSQL

Sangat sulit mengingat semua perintah MySQL, karena itu dibutuhkan bantuan

agar kita bisa mengetahui perintah MySQL yang akan digunakan.

Untuk melihat bantuan MySQL, anda harus masuk dulu ke MySQL dengan perintah;

Tanda jika anda sudah ada dalam MySQL adalah;

Untuk menampilkan HELP bisa menggunakan perintah

atau

MENAMPILKAN TANGGAL

Gunakan perintah berikut untuk menampilkan tanggal. Pastikan akhir perintah di

beri tanda TITIK KOMA (;) kemudian tekan enter.

Page 100: KATA PENGANTAR - neezasty.files.wordpress.com · 1 KATA PENGANTAR Kurikulum 2013 pada jenjang SMK didesain dengan tujuan membekali siswa agar berkompeten pada paket keahlian masing-masing

100

MENAMPILKAN WAKTU ATAU JAM

MENGGUNAKAN KALKULATOR

Untuk menggunakan kalkulator di MySQL gunakan perintah sebagai berikut;

Penjumlahan

Perkalian

Pengurangan

Pembagian

Modulo (Sisa hasil pembagian)

Page 101: KATA PENGANTAR - neezasty.files.wordpress.com · 1 KATA PENGANTAR Kurikulum 2013 pada jenjang SMK didesain dengan tujuan membekali siswa agar berkompeten pada paket keahlian masing-masing

101

Hasil pembagian integer (utuh)

D. AKTIVITAS PEMBELAJARAN : PRAKTIKUM INSTALLASI

Prosedur atau langkah-langkah installasi dilakukan sesuai instruktur guru. Setiap siswa

wajib melakukan praktik dengan laptop yang tersedia baik laptop sendiri atau komputer lab.

Setelah melakukan installasi mencoba mempraktikkan penggunaan MySQL dengan

menggunakan Command Line (CMD). Setelah selesai melakukan aktivitas praktikum siswa

mendemontrasikan dan melaporkan hasilnya melalui laporan praktikum kepada guru pengampu.

E. LATIHAN / TUGAS

1. Jelaskan pengertian SQL?

2. Sebutkan 10 dan fungsinya perintah pernyataan SQL pada basis data !

3. Sebutkan 5 type data beserta penerapanya pada basis data MySQL!

4. Jelaskan bagaimana menampilkan waktu pada server SQL?

F. RANGKUMAN

SQL (Structured Query Language) adalah sebuah bahasa yang dipergunakan untuk mengakses

data dalam database relasional. Pernyataan adalah perintah SQL yang meminta sesuatu

tindakan kepada DBMS. Pernyataan tersebut dikelompokkan sebagai DDL (Data

Definition Language), DML (Data Manipulation Language) dan DCL (Data Control

Language). Pada DBMS MySQL terdapat Type data numeric, string dan date time.

Perintah-Perintah SQL dapat diterapkan menggunakan Query pada CMD seperti

perintah : USE, CREATE, QUIT.

Page 102: KATA PENGANTAR - neezasty.files.wordpress.com · 1 KATA PENGANTAR Kurikulum 2013 pada jenjang SMK didesain dengan tujuan membekali siswa agar berkompeten pada paket keahlian masing-masing

102

PEMBELAJARAN 9:

DDL (DATA DEFINITION LANGUAGE)

A. Tujuan Pembelajaran

Setelah mengikuti kegiatan belajar ini diharapkan peserta didik dapat :

Menulis query dengan mengimplementasikan syntax data dari DDL pada SQL

B. Indikator pencapaian Kompetensi

Menjelaskan syntax DDL dalam membuat table baru (create table) dengan baik

Menjelaskan syntax DDL dalam mengubah table (alter table) dengan baik

Menjelaskan syntax DDL dalam menghapus table (drop table) dengan baik.

C. Uraian materi

Data Difinitions Language (DDL) mambahas tentang hal-hal yang berhubungan dengan

struktur tabel (pembuatan database, table, index) yang meliputi,

1. Cara membuat tabel baru (create table) ,

2. Mengubah struktur tabel (alter table) dan

3. Menghapus tabel (drop table).

Langkah – Langkah sebagai berikut :

a. Membuat Database

Syntax : CREATE DATABASE namadatabase;

namadatabase tidak boleh mengandung spasi dan tidak boleh memiliki nama

yang sama antar database. Berikut ini perintah untuk membuat database dengan

nama rental :

Syntax tambahan : untuk menampilkan daftar nama database yang ada

pada mysql menggunakan perintah :

Page 103: KATA PENGANTAR - neezasty.files.wordpress.com · 1 KATA PENGANTAR Kurikulum 2013 pada jenjang SMK didesain dengan tujuan membekali siswa agar berkompeten pada paket keahlian masing-masing

103

SHOW DATABASES; seperti

b. Menghapus Database

Syntax : DROP DATABASE namadatabase;

Database yang akan dihapus sesuai dengan namadatabase. Berikut ini perintah

untuk menghapus database dengan nama rental :

c. Membuat Tabel

Sebelum membuat suatu tabel, terlebih dahulu harus memilih salah satu

database sebagai database aktif yang akan digunakan untuk menyimpan

tabel-tabel dengan menggunakan syntax : USE namadatabase;

Berikut ini perintah untuk menggunakan database dengan nama rental :

Syntax membuat table :

CREATE TABLE namatabel2 (

Field1 TipeData1,

Field2 TipeData2

);

namatabel tidak boleh mengandung spasi (space). Field1 dan TipeData1 merupakan

nama kolom pertama dan tipe data untuk kolom pertama. Jika ingin membuat tabel

dengan kolom lebih dari satu, maka setelah pendefinisian tipe data sebelumnya

diberikan tanda koma (,). Berikut ini perintah untuk membuat tabel dengan nama

jenisfilm :

Syntax tambahan :

Untuk menampilkan daftar nama tabel yang ada pada database yang sedang

Page 104: KATA PENGANTAR - neezasty.files.wordpress.com · 1 KATA PENGANTAR Kurikulum 2013 pada jenjang SMK didesain dengan tujuan membekali siswa agar berkompeten pada paket keahlian masing-masing

104

aktif/digunakan (dalam hal ini database rental) :

SHOW TABLES

Untuk menampilkan deskripsi tabel (dalam hal ini jenisfilm) syntaxnya

adalah :

DESC namatabel;

d. Menghapus Tabel

Syntax : DROP TABLE namatabel;

Tabel yang akan dihapus sesuai dengan namatabel, berikut ini perintah untuk

menghapus tabel dengan nama jenisfilm :

e. Mendefinisikan null/not null

Syntax :

CREATE TABLE namatabel (

Field1 TipeData1 NOT NULL, Field2

TipeData2

); f. Mendefinisikan Nilai Default

Nilai default adalah nilai yang otomatis diberikan oleh sistem untuk suatu

kolom ketika ada penambahan baris baru, sementara nilai pada kolom

tersebut tidak diisi oleh pengguna. Syntax :

CREATE TABLE namatabel (

Field1 TipeData1, Field2 TipeData2 DEFAULT nilai

);

Page 105: KATA PENGANTAR - neezasty.files.wordpress.com · 1 KATA PENGANTAR Kurikulum 2013 pada jenjang SMK didesain dengan tujuan membekali siswa agar berkompeten pada paket keahlian masing-masing

105

g. Mendefinisikan Primary Key Pada Tabel

Terdapat tiga cara untuk mendefinisikan primary key. Berikut ini adalah

Syntax mendefinisikan primary key untuk Field1

CREATE TABLE namatabel (

Field1 TipeData1 NOT NULL PRIMARY KEY, Field2

TipeData2

);

Atau

CREATE TABLE namatabel (

Field1 TipeData1, Field2

TipeData2, PRIMARY

KEY(Field1)

);

atau

ALTER TABLE namatabel ADD CONSTRAINT namaconstraint

PRIMARY KEY (namakolom);

D. AKTIVITAS PEMBELAJARAN

Aktivitas pada kegiatan pembelajaran, mencakup topik-topik berikut:

1. Membuat query untuk membuat tabel

2. Membuat query untuk mengubah struktur tabel

3. Membuat query untuk menghapus tabel

E. LATIHAN / TUGAS

1) Query yang digunakan untuk menghapus tabel EMP2 adalah

a. Delete table EMP2

b. Drop table EMP2

c. Backspace table EMP2

d. Clear table EMP2

2) Query yang digunakan untuk menambahkan kolomnama dengan tipe varchar2 dengan pan-

jang karakter 20 pada tabel tabel EMP2 adalah

Page 106: KATA PENGANTAR - neezasty.files.wordpress.com · 1 KATA PENGANTAR Kurikulum 2013 pada jenjang SMK didesain dengan tujuan membekali siswa agar berkompeten pada paket keahlian masing-masing

106

a. ALTER TABLE EMP2 ADD nama varchar2(20);

b. ALTER TABLE EMP2 ADD nama varchar2(2);

c. ALTER TABLE nama ADD EMP2 varchar2(20);

d. ALTER TABLE EMP2(20) ADD nama varchar2;

3) Query yang digunakan untuk membuat tabel EMP2 dengan 2 kolom adalah

a. create table EMP2 (PNO number(3) constraint prj_pk

primary key, PNAME varchar2(60) unique);

b. create table EMP2 unique (PNO number(3) constraint prj_pk

primary key, PNAME varchar2(60));

c. create table EMP2 (PNO number(3) constraint unique prj_pk

primary key, PNAME varchar2(60));

d. create table EMP2 unique (PNO number(3)

unique constraint prj_pk primary key, PNAME varchar2(60));

4) hal yang terjadi jika dalam query drop tabel, user lupa menambahkan nama tabel yang

dihapus adalah

a. Data dalam tabel terhapus semua

b. Query error

c. Tidak terdapat data yang terhapus

d. Semua tabel terhapus

F. RANGKUMAN

DDL membahas tentang pembuatan database, menghapus database, membuat table, mengubah

table dan menghapus table serta penggunaan key pada database. Maka Data Difinitions Lan-

guage (DDL) mambahas tentang hal-hal yang berhubungan dengan struktur tabel (pembuatan

database, table, index) yang meliputi,

1. Cara membuat tabel baru (create table) ,

2. Mengubah struktur tabel (alter table) dan

3. Menghapus tabel (drop table).

Page 107: KATA PENGANTAR - neezasty.files.wordpress.com · 1 KATA PENGANTAR Kurikulum 2013 pada jenjang SMK didesain dengan tujuan membekali siswa agar berkompeten pada paket keahlian masing-masing

107

PEMBELAJARAN 10:

DML (DATA MANIPULATION LANGUAGE)

A. Tujuan Pembelajaran

Setelah mengikuti kegiatan belajar ini diharapkan peserta didik dapat :

Menulis query dengan mengimplementasikan syntax data dari DML pada SQL

B. Indikator pencapaian Kompetensi

Menjelaskan syntax DML dalam menampilkan data (select) dengan baik

Menjelaskan syntax DML dalam menambahkan data (insert) dengan baik

Menjelaskan syntax DML dalam mengubah data (update) dengan baik

Menjelaskan syntax DML dalam menghapus data (delete) dengan baik.

C. Uraian materi

1. Definisi DML

DML adalah kelompok perintah yang berfungsi untuk memanipulasi data dalah tabel dalam

basis data, misalhnya utnuk pengambilan, penyisipan, pengubahan dan penghapusan data.

Perintah yang umum dilakukan adalah : INSERT (menambahkan data baru), DELETE

(menghapus data yang sudah ada), UPDATE (mengubah data yang sudah ada), dan SELECT

(menampilkan data yang sudah ada).

2. Perintah DML pada SQL

1. INSERT

Memasukan data atau entry data, dalam semua program yang menggunakan query SQL

sebagai standar pemintaannya, digunakan perintah INSERT. Syarat untuk memasukan data

adalah telah terciptanya tabel pada sebuah database. Sintaks yang digunakan ialah :

INSERT INTO nama_tabel VALUES (‘isi field1’,’isi field2,...,’isi fieldN’);

Page 108: KATA PENGANTAR - neezasty.files.wordpress.com · 1 KATA PENGANTAR Kurikulum 2013 pada jenjang SMK didesain dengan tujuan membekali siswa agar berkompeten pada paket keahlian masing-masing

108

Contoh :

Perintah sintaks INSERT diatas diperlukan untuk pengisian data seluruh field dan urutan isi

field dimasukan berdasarkan urutan nama field. Misal, niali data pad aurutan pertama ‘C0001’

akan diisikan pada field urutan pertama yaitu ‘ID_Cust’, sedangkan nilai data ‘Asep’ pada

urutan kedua akan diisikan pada field kedua yaitu ‘Nama_Cust’ dst.

Sedangkan untuk mengisi data lebih dari satu pada sebuah tabel, digunakan sintaks :

INSERT INTO nama_tabel VALUES (‘isi field1’,’isi field2,...,’isi fieldN’), (‘isi field1’,’isi

field2,...,’isi fieldN’), (‘isi field1’,’isi field2,...,’isi fieldN’), (‘isi field1’,’isi field2,...,’isi

fieldN’);

Contoh :

2. Memperbarui Isi Data

Memperbarui isi data atau update adalah sebuahproses mermajakan data lama menjadi data

yang lebih baru. Namun tidak semua data dalam database yang perlu diremajakan, melainkan

sebagian data yang dianggapperlu untuk diremajakan. Query SQL yang digunakan adalah

UPDATE seperti berikut :

UPDATE nama_tabel SET

field1 = niali_baru1

field2 = nilai_baru2

...

fieldN = nilai_baruN

WHERE kondisi;

Contoh :

Page 109: KATA PENGANTAR - neezasty.files.wordpress.com · 1 KATA PENGANTAR Kurikulum 2013 pada jenjang SMK didesain dengan tujuan membekali siswa agar berkompeten pada paket keahlian masing-masing

109

Pada notasi diatas, klausa WHERE persifat opsional. Bila klausa WHERE ini disertakan,

hanya baris-baris tertentu sajayang memenuhi kondisi yang dapat diubah. Jika klausa where

ini tidak disertakan, sebua baris akan diubah. Adapun SET digunakan untuk menentukan

field-field yang akan diubah. Pada contoh diatas, hanya data yang memiliki nama ‘Asep’ saja

yang diubah pada field Nama_Cust dengan data ‘Asep Rahmanudin’.

3. Menghapus Data (DELETE)

Untuk menghaps data, MySQLmemliki Query bernama DELEETE. Penggunaannya diikuti

dengan nama data yang akan dihapus. Sintaks untuk menghapus semua data yang terdapat

pada tabel :

DELETE FROM nama_tabel;

Sedangkan berikut sintaks untuk menghapus data yang diinginkan dari sebuah tabel;

DELETE FROM nama_tabel WHERE kondisi;

Contoh :

4. Memahami Makna Primary Key

Primary key pada tabel berperan sebagai identitas yang bersifat unik. Field yang menjadi

primary key tidak boel bernilai kembar. Hal ni dibuktikan dengan memsukan ID_Cust

bernialai C0001 yang sebenarnya suad ada pada tabel.

Page 110: KATA PENGANTAR - neezasty.files.wordpress.com · 1 KATA PENGANTAR Kurikulum 2013 pada jenjang SMK didesain dengan tujuan membekali siswa agar berkompeten pada paket keahlian masing-masing

110

Kesalahan tersebut mengkondisikan bahwa ID_Cust yang bernilai C0001 sudah ada di dalam

tabel customer, sehingga MySQL menolak INSERT data. Penolakan ini berlaku juga terhadap

Composit Key dan Foreign Key, jika data yang dimasukan sudah ada pada database.

5. Memahami Query data pada perintah Update dan Delet dengan menggabungkan dua atau

lebih tabel

Pada dasarnya, untuk mengubah atau menghapus data kadang kala tergantung dari kondisi

tabel lain. Oleh karena itu diperlukan penggabungan antara dua tabel atau lebih. Operasi

penggabungan dilakukan padaklausa where sebagai kondisi selsai data. Penggabungan tabel

dilakukan dengan perintah :

a. Join : adalah penggabungan data pada tabel-tabel yang meiliki nilai yang sama

untuk field-field yang disebutkan.

b. Natural Join : adalah penggabungan data pada tabel yang memiliki nilai yang

mencerminkan hubungan antara primary key dan foregn key.

c. Left Join : adalah penggabungan data pada tabel yang akan mengambil sema data

pada tabel kiri meskipun tidak memiliki pasangannya pada tabel kanan.

d. Right Join : adalah penggabungan data pada tabel yanag akan mengambil semua

data pada tabel kanan meskipun tidak memiliki pasangan pada tabel kanan.

6. Memahami Query data pada perintah Insert dan Update dengan nilainya didapat dari

subQuery

Subquery adalah bentukquery yang terletak di dalam query. Umumnya subquery digunakan

pada perintah SELECT, namun dapat digunakan pada peritnah INSERT dan UPDATE pada

saat pengisisan nilai yang datanya didapat dari tabel lain.

Page 111: KATA PENGANTAR - neezasty.files.wordpress.com · 1 KATA PENGANTAR Kurikulum 2013 pada jenjang SMK didesain dengan tujuan membekali siswa agar berkompeten pada paket keahlian masing-masing

111

D. AKTIVITAS PEMBELAJARAN

Tabel Cutomer

Tabel Apoteker

Untuk mengisikan data pada tabel Apoteker, terlebih dahulu kita harus membuat tabel Apoteker yang

terdiri dari ID_Apoteker sebagai Primary Key, Nama_Apoteker, Alamat, dan Tlp_Apoteker. Membuat

tabel Apoteker dengan menggunakan perintah CREATE TABLE.

Setelah tabel dibuat, maka data bisa diisikan dengan menggunaka peirntah INSERT INTO. Lalu isikan isi

data dengan berurutan sesuai dengan field yang ada.

Page 112: KATA PENGANTAR - neezasty.files.wordpress.com · 1 KATA PENGANTAR Kurikulum 2013 pada jenjang SMK didesain dengan tujuan membekali siswa agar berkompeten pada paket keahlian masing-masing

112

Gambar 1.1 Data tabel Apoteker

Tabel Jenis Obat

Untuk mengisikan data pada tabel Jenis_Obat, terlebih dahulu kita harus membuat tabel Jenis_Obat

yang terdiri dari Kode_Jenis sebagai Primary Key dan Nama _Jenis. Membuat tabel Jenis Obat dengan

menggunakan perintah CREATE TABLE.

Setelah tabel dibuat, maka data bisa diisikan dengan menggunaka peirntah INSERT INTO. Lalu isikan isi

data dengan berurutan sesuai dengan field yang ada.

Page 113: KATA PENGANTAR - neezasty.files.wordpress.com · 1 KATA PENGANTAR Kurikulum 2013 pada jenjang SMK didesain dengan tujuan membekali siswa agar berkompeten pada paket keahlian masing-masing

113

Tabel Obat

Untuk mengisikan data pada tabel Obat, terlebih dahulu kita harus membuat tabel Obat yang terdiri

dari Kode_Obat sebagai Primary Key, Kode_Jenis sebagai Foreign Key, Nama_Obat, Harga _Obat,

Bentuk _Obat, Kegunaan_Obat, Aturan_Pakai, Exp_Date. Membuat tabel Obat dengan menggunakan

perintah CREATE TABLE.

Setelah tabel dibuat, maka data bisa diisikan dengan menggunaka peirntah INSERT INTO. Lalu isikan isi

data dengan berurutan sesuai dengan field yang ada.

Page 114: KATA PENGANTAR - neezasty.files.wordpress.com · 1 KATA PENGANTAR Kurikulum 2013 pada jenjang SMK didesain dengan tujuan membekali siswa agar berkompeten pada paket keahlian masing-masing

114

Tabel Resep

Untuk mengisikan data pada tabel Resep, terlebih dahulu kita harus membuat tabel Resep yang terdiri

dari Kode_Resep sebagai Primary Key, ID_Cust sebagai Foreign Key, Kode_Obat, Tgl_Resep, dan Dosis

Obat. Membuat tabel Resep dengan menggunakan perintah CREATE TABLE.

Setelah Tabel Resep dibuat, maka tabel dapat diisikan dengan dengan data yang sudah ditentukan.

Page 115: KATA PENGANTAR - neezasty.files.wordpress.com · 1 KATA PENGANTAR Kurikulum 2013 pada jenjang SMK didesain dengan tujuan membekali siswa agar berkompeten pada paket keahlian masing-masing

115

Tabel Pembayaran

Untuk mengisikan data pada tabel Pembayaran, terlebih dahulu kita harus membuat tabel

Pembayaran yang terdiri dari ID_Nota sebagai primary keydan mode Auto Increment, ID_Apoteker

sebagai Foereign Key, Kode_Resep, Tgl_Nota, dan Harga_Total. Membuat tabel Pembayan dengan

menggunakan perintah CREATE TABLE.

Setelah tabel dibuat, maka data bisa diisikan dengan menggunaka peirntah INSERT INTO. Lalu isikan isi

data dengan berurutan sesuai dengan field yang ada.

E. LATIHAN / TUGAS

Buatlah data pada table seperti aktivitas pembelajaran kemudian lakukan modifikasi seperti :

1. Mengubah data alamat pada data udin menjadi cimahi

2. Mengubah data harga obat B0003 menjadi 5000

3. Menghapus data apoteker yang beralamat di Jl. Kolonel Matsuri

Page 116: KATA PENGANTAR - neezasty.files.wordpress.com · 1 KATA PENGANTAR Kurikulum 2013 pada jenjang SMK didesain dengan tujuan membekali siswa agar berkompeten pada paket keahlian masing-masing

116

F. RANGKUMAN

DML adalah kelompok perintah yang berfungsi untuk memanipulasi data dalah tabel dalam basis

data, misalhnya utnuk pengambilan, penyisipan, pengubahan dan penghapusan data. Perintah

yang umum dilakukan adalah : INSERT (menambahkan data baru), DELETE (menghapus data

yang sudah ada), UPDATE (mengubah data yang sudah ada), dan SELECT (menampilkan data

yang sudah ada). Untuk memodifikasi SQL gunakan perintah WHERE.

Page 117: KATA PENGANTAR - neezasty.files.wordpress.com · 1 KATA PENGANTAR Kurikulum 2013 pada jenjang SMK didesain dengan tujuan membekali siswa agar berkompeten pada paket keahlian masing-masing

117

PEMBELAJARAN 11:

DCL (DATA CONTROL LANGUAGE)

A. Tujuan Pembelajaran

Setelah mengikuti kegiatan belajar ini diharapkan peserta didik dapat :

Menulis query dengan mengimplementasikan syntax data dari DCL pada SQL

B. Indikator pencapaian Kompetensi

Menjelaskan syntax DCL dalam memberikan hak akses user (grant) dengan baik

Menjelaskan syntax DCL dalam mencabut hak akses user (revoke) dengan baik

C. Uraian materi

Grant dan Revoke

Untuk memberikan hak/izin akses oleh administrator (pemilik utama) server kepada user.

Hak akses tersebut berupa hak membuat (CREATE), mengambil (SELECT), menghapus

(DELETE), mengubah (UPDATE), dan hak khusus berkenaan dengan sistem

databasenya.Perintah GRANT digunakan untuk memberikan hak akses menampilkan,

menambah, memodifikasi dan menghapus data pada pada suatu table.Secara umum, syntax

Grant adalah sebagai berikut:

GRANT [akses / privileges]

ON

[table] FROM

[user];

Contoh:

Perintah berikut digunakan untuk memberikan hak akses pada tabel departmens user

anakwadung.

GRANT select, insert, update, delete ON

departmens TO anakwadung;

Page 118: KATA PENGANTAR - neezasty.files.wordpress.com · 1 KATA PENGANTAR Kurikulum 2013 pada jenjang SMK didesain dengan tujuan membekali siswa agar berkompeten pada paket keahlian masing-masing

118

REVOKE, merupakan perintah yang digunakan untuk mencabut suatu hak aksesseorang user

pada tabel dalamdatabase tertentu. Secara umum, syntax Grant adalah sebagai berikut:

REVOKE [akses / privileges]

ON [table]

FROM

[User];

Contoh:

Perintah berikut digunakan untuk mencabut hak akses pada tabel departmens

user anakwadung.

REVOKE select, insert, update, delete ON

departmens TO anakwadung;

D. AKTIVITAS PEMBELAJARAN

Aktivitas pada kegiatan pembelajaran ini melakukan implementasi :

1. Memberi hak akses pada user (grant)

2. Mencabut hak akses pada user (revoke)

3. Buat laporan hasil dan analisisnya!

E. LATIHAN / TUGAS

1. Perintah berikut digunakan untuk memberikan hak akses CREATE, READ, UPDATE

dan DELETE pada tabel dep user anakwadung adalah

a. GRANT select,

anakwadung;

insert, update, drop ON dep TO

b. GRANT select,

anakwadung;

create, update, delete ON dep TO

c. GRANT select,

anakwadung;

insert, update, delete ON dep TO

d.

GRANT read, insert, update, delete ON dep

TO anakwadung;

Page 119: KATA PENGANTAR - neezasty.files.wordpress.com · 1 KATA PENGANTAR Kurikulum 2013 pada jenjang SMK didesain dengan tujuan membekali siswa agar berkompeten pada paket keahlian masing-masing

119

2. Perintah berikut digunakan untuk melepas hak akses CREATE, READ,

UPDATE dan DELETE pada tabel dep user anakwadung adalah

a. REVOKE select,

anakwadung;

insert, update, drop ON dep TO

b. REVOKE select,

anakwadung;

create, update, delete ON dep TO

c. REVOKE select,

anakwadung;

insert, update, delete ON dep TO

d. REVOKE read, insert, update, delete ON dep TO

anakwadung;

F. RANGKUMAN

Kegiatan memodifikasi database yang memanfaatkan stetemen insert, update, dan delete ada-

lah suatu kegiatan yang biasanya disebut tansaksi (transaction). Kegiatan transaksi ini disimpan

secara sementara di dalam database system. Ada beberapa kegiatan yang tergolong dalam Data

Control Language (DCL) ini diantaranya adalah : Memberi hak akses ( grant ) dan Mencabut

hak akses (revoke).

Page 120: KATA PENGANTAR - neezasty.files.wordpress.com · 1 KATA PENGANTAR Kurikulum 2013 pada jenjang SMK didesain dengan tujuan membekali siswa agar berkompeten pada paket keahlian masing-masing

120

DAFTAR PUSTAKA

Ramakrishnan, Ragu dan Gehrke Johannes, (2004), “Sistem

manajemen Basis data” Edisi 3, terjemahan, Mc Graw Hill

Education, diterbitkan ulang ulang Penerbit Andi,

Kusrini, (2007) “Strategi perancangan dan pengelolaan basis data”,

penerbit Andi, Yogyakarta

Ramon A, Mata Toledo dan Pauline K, Cushman, (2007), “ Schaum

Outlines Dasar Dasar Data Base Relasional ”, terjemahan MC

Graw Hill Education, Diterbitkan ulang oleh Penerbit Erlangga,

Jakarta.

Rofiq, Ainur. 2008. “Rekaya Perangkat Lunak Jilid 2 Untuk Sekolah

Menengah Kejuruan”. Direktorat Pembinaan SMK.

Riana. 2016. “Modul Guru Pembelajar RPL Kelompok Kompetensi A”.

Direktoral Jenderal Guru dan Tenaga Kependidikan kementerian

Pendidikan dan Kebudayaan.

Hasri, Muh. 2016. “Modul Guru Pembelajar RPL Kelompok Kompetensi

B”. Direktoral Jenderal Guru dan Tenaga Kependidikan

kementerian Pendidikan dan Kebudayaan.

Khamami H, dan Agus H. 2011. “Modul Struktured Query Language”.

Diklat Umum Kementerian Keuangan Republik Indonesia.

Pusdiklat Keuangan Umum.

Annisa, Nurul. 2018. “Modul Praktikum Data Manipulation Language”.

Program Studi Informatika, Universitas Jenderal Achmad Yani.

Hamdan, Isa. 2018. “Belajar MySQL dari NOL”. Komputer Kit.

Page 121: KATA PENGANTAR - neezasty.files.wordpress.com · 1 KATA PENGANTAR Kurikulum 2013 pada jenjang SMK didesain dengan tujuan membekali siswa agar berkompeten pada paket keahlian masing-masing

121

GLOSARIUM

Abstraksi data adalah merupakan tingkatan atau level bagaimana

melihat data dalam sistem basis data, sejumlah konsep yang

digunakan untuk membuat deskripsi struktur basis data,

diwujudkan dalam pemodelan data, melalui deskripsi

tersebutdapat ditentukan jenis data dan hubungannya deangan

data lain

Attribute adalah merupakan karakteristik dari entitas atau relationship,

yang menyediakan penjelasan detail entitas atau relationship

tersebut. Dalam penerapannya (level fisik) atribut merupakan

field atau kolom dari sebuah tabel.

Basis Data: adalah kumpulan data yang saling berhubungan yang

disimpan secara bersama sedemikian rupa dan tanpa

pengulangan (redundancy) yang tidak perlu, untuk memenuhi

berbagai kebutuhan

Entitas adalah obyek yang mewakili sesuatu dalam dunia nyata dan

dapat dibedakan antara satu dengan lainnya (unique). Entitas

dapat berupa: Data Fisik (seperti mobil, rumah, manusia,

pegawai), abstrak atau konsep (seperti department, pekerjaan,

mata pelajaran) dan Kejadian (pembelian, penjualan,

peminjaman)

Key attribute adalah suatu atribut yang menandakan kunci dari suatu

entitas dan bersifat atau mempunyai nilai unik sehingga dapat

digunakan untuk membedakan data pada suatu baris atau

record dengan baris lain pada suatu entitas

Multi Value attribute adalah atribut yang dapat memiliki lebih dari satu

nilai yang jenisnya sama dari sebuah data tunggal.

Page 122: KATA PENGANTAR - neezasty.files.wordpress.com · 1 KATA PENGANTAR Kurikulum 2013 pada jenjang SMK didesain dengan tujuan membekali siswa agar berkompeten pada paket keahlian masing-masing

122

Derived Attribute atau Atribut Turunan adalah atribut yang nilai-nilainya

diperoleh dari pengolahan atau dapat diturunkan dari atribut atau

tabel lain yang berhubungan.

Key Attribute adalah merupakan suatu atribut yang menandakan kunci

dari suatu entitas yang bersifat unik. Key attribute dapat terdiri

dari satu atau beberapa atribut yang mempunyai nilai unik

sehingga dapat digunakan untuk membedakan data pada suatu

baris/record dengan baris lain pada suatu entitas.

Super key adalah satu atau gabungan beberapa atribut yang dapat

membedakan setiap baris data dalam sebuah tabel secara unik.

Candidat Key adalah merupakan superkey yang jumlah atributnya

paling sedikit.

Primary key adalah suatu candidat key yang dipilih menjadi kunci

utama karena sering dijadikan acuan untuk mencari informasi,

ringkas, menjadi keunikan suatu baris.

Relasi menyatakan hubungan antara dua atau beberapa entitas. Setiap

relasi mempunyai batasan (constraint) terhadap kemungkinan

kombinasi entitas yang berpartisipasi.

Batasan partisipasi atau batasan hubungan entitas menjelaskan

bagaimana data itu berelasi, batasan ini menentukan

bagaimana (harus ataukah tidak) berpartisipasi suatu entitas

dengan relasinya pada entitas lain