• Tidak ada hasil yang ditemukan

PERANCANGAN BASIS DATA

N/A
N/A
Protected

Academic year: 2021

Membagikan "PERANCANGAN BASIS DATA"

Copied!
36
0
0

Teks penuh

(1)

1

Modul Pengajaran

PERANCANGAN BASIS DATA

PENYUSUN

Sandra J Kuryanti

Diploma Tiga

Program Studi Manajemen Informatika

AMIK BSI BOGOR

(2)

2

KATA PENGANTAR

Puji syukur penulis panjatkan kehadirat Allah SWT yang telah melimpahkan rahmat dan karunia-Nya, sehingga pada akhirnya penulis dapat menyelesaikan modul pengajaran ini dengan baik.

Adapun judul modul pengajaran ini adalah Perancangan Basis Data. Penulis berharap semoga modul pengajaran ini dapat bermanfaat dan dapat dipergunakan untuk menambah materi pengajaran. Seperti kata pepatah, tak ada gading yang tak retak, penulis pun menyadari kalau modul pengajaran ini masih belum sempurna, masih banyak terdapat kesalahan di sana sini. Oleh karena itu penulis memohon kritik dan saran yang membangun guna perbaikan modul ini ke depannya.

Akhir kata penulis mengucapkan terima kasih kepada semua pihak yang telah membantu dalam penyelesaian modul pengajaran ini.

Wassalam Penulis

(3)

3

DAFTAR ISI

Halaman Lembar cover ... 1 Kata Pengantar ... 2 Daftar Isi ... 3 BAB I ... ... 4 BAB II ... ... . 6 BAB III ... ……….. 7 BAB IV ……….. .... 11 BAB V ……….. ... 18 BAB VI ……….. .... 22 BAB VII ……….. ... 28

(4)

4 BAB I

KONSEP DASAR SISTEM DATABASE DAN PERANCANGAN DATABASE

Data Base (basis data) merupakan kumpulan data yang saling berhubungan. Hubungan antar data dapat ditunjukan dengan adanya field/kolom kunci dari tiap file/tabel yang ada. Dalam satu file atau table terdapat record-record yang sejenis, sama besar, sama bentuk, yang merupakan satu kumpulan entitas yang seragam. Satu record (umumnya digambarkan sebagai baris data) terdiri dari field yang saling berhubungan menunjukan bahwa field tersebut dalam satu pengertian yang lengkap dan disimpan dalam satu record.

Adapun Struktur Database adalah : Database File/Table Record Elemen data/FieldDari pengertian diatas dapat disimpulkan bahwa 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.

Prinsip utama Data Base adalah pengaturan data dengan tujuan utama fleksibelitas dan kecepatan pada saat pengambilan data kembali. Adapun ciri-ciri basis data diantaranya adalah sebagai berikut :

1. Efisiensi meliputi kecepatan, ukuran, dan ketepatan 2. Data dalam jumlah besar.

3. Berbagi Pakai (dipakai bersama sama/Sharebility).

4. Mengurangi bahkan menghilangkan terjadinya duplikasi dan ketidakkonsistenan data

Istilah-Istilah Yang Dipergunakan Dalam Sistem Basis Data 1. Enterprise yaitu suatu bentuk organisasi

Contoh :

Enterprise: Sekolah, Database : Nilai

Enterprise: Rumah sakit, Database : AdministrasiPasien

(5)

5 Contoh :

Database : Nilai, Entitas: mahasiswa, Matapelajaran

Database : Administrasi Pasien, Entitas: pasien, dokter, obat

3. Atribute/field yaitu setiap entitas mempunyai atribut atau suatu sebutan untuk mewakili suatu entitas.

Contoh :

Entity : siswa, Field = Nim, nama_siswa,alamat,dll Entity : nasabah, Field=Kd_nasabah,nama_nasabah,dll

4. Data value yaitu data aktual atau informasi yang disimpan pada tiap data elemen atau atribute.

Contoh :

Atribut nama_karyawan : sutrisno, budiman, dll

5. Record/tuple yaitu kumpulan elemen-elemen yang saling berkaitan menginformasikan tentang suatu entity secara lengkap.

Contoh :

Record mahasiswa: nim, nm_mhs, alamat.

6. File yaitu kumpulan record-record sejenis yang mempunyai panjang elemen sama, atribute yang sama namun berbeda-beda data valuenya

7. Kunci elemen data yaitu tanda pengenal yang secara unik mengindentifikasikan entitas dari suatu kumpulan entitas

(6)

6 BAB II DATA MODEL

Sekumpulan konsep-konsep untuk menerangkan data, hubungan-hubungan antara data dan batasan-batasan data yang terintegrasi di dalam suatu organisasi. Tujuan model data adalah untuk Menyajikan data agar mudah di modifikasi dan di mengerti.

Jenis-Jenis Model Data 1. Model data berbasis objek

Model data berbasis objek menggunakan konsep entitas, atribut dan hubungan antar entitas. Model data berbasis objek terdiri dari :

 Entity Relationship model

Model untuk menjelaskan hubungan antar data dalam basis data berdasarkan suatu persepsi bahwa real word terdiri dari objek-object dasar yang mempunyai hubungan atau relasi antara objek-objek tersebut

 Semantik data model

Hampir sama dengan Entity Relationship model dimana relasi antara objek dasar tidak dinyatakan dengan simbol tetapi menggunakan kata-kata (Semantic).

2. Model data berbasis record

Model ini berdasarkan pada record untuk menjelaskan kepada user tentang hubungan logic antar data dalam basis data

3. Model data fisik

Digunakan untuk menguraikan data pada internal level. Beberapa model yang umum digunakan :

 Unifying model

Model ini menggabungkan memori dan transaksi database dalam satu kesatuan model.  Frame memory

Frame Memory adalah sebuah virtual view dari tempat penyimpanan sekunder yang digunakan untuk mendukung penyimpanan record database

4. Model data konseptual

Model yang dibuat berdasarkan anggapan bahwa dunia nyata terdiri dari koleksi obyek-obyek dasar yang dinamakan entitas (entity) serta hubungan (relationship) antara entitas-entitas itu. Biasanya direpresentasikan dalam bentuk Entity Relationship Diagram.

(7)

7 BAB IIII

ENTITY RELATIONSHIP DIAGRAM

Basisdata Relasional adalah kumpulan dari relasi-relasi yang mengandung seluruh informasi berkenaan suatu entitas/ objek yang akan disimpan di dalam database. Tiap relasi disimpan sebagai sebuah file tersendiri. Perancangan basisdata merupakan suatu kegiaatan yang setidaknya bertujuan sebagai berikut:

1. Menghilangkan redundansi data

2. Meminimumkan jumlah relasi di dalam basis data

3. Membuat relasi berada dalam bentuk normal, sehingga dapat meminimumkan permasalahan berkenaan dengan penambahan, pembaharuan dan penghapusan.

Entity relationship diagram / ERD adalah suatu pemodelan dari basisdata relasional yang didasarkan atas persepsi di dalam dunia nyata, dunia ini senantiasa terdiri dari sekumpulan objek yang saling berhubungan antara satu dengan yang lainnya. Suatu objek disebut entity dan hubungan yang dimilikinya disebut relationship. Suatu entity bersifat unik dan memiliki atribut sebagai pembeda dengan entity lainnya

Simbol Entity Relationship Diagram

Simbol Keterangan

Entity

Weak Entity

Relationship

(8)

8

Atribut

Atribut Primari Key

Atribut Multi Value

Atribut Derivatif

Atribut Composite

Contoh Kasus

Pada saat mendaftar menjadi anggota perpustakaan, dicatatlah nama, nomor mahasiswa dan alamat mahasiswa. Setelah itu mereka baru bisa meminjam buku di perpustakaan. Buku-buku yang dimiliki perpustakaan banyak sekali jumlahnya. Tiap buku memiliki data nomor buku, judul, pengarang, penerbit, tahun terbit. Satu buku bisa ditulis oleh beberapa pengarang.

Tahapan pembuatan ERD

1. Mengidentifikasi dan menetapkan seluruh himpunan entitas yang akan terlibat. 2. Menentukan atribut-atribut key dari masing-masing himpunan entitas.

3. Mengidentifikasi dan menetapkan seluruh himpunan relasi diantara himpunan entitas-himpunan entitas yang ada beserta foreign key-nya.

4. Menentukan derajat/kardinalitas relasi untuk setiap himpunan relasi.

5. Melengkapi himpunan entitas dan himpunan relasi dengan atribut-atribut deskriptif (non

(9)

9 Contoh

1. Entitas = Anggota, Buku

2. Atribut Key = Nomor Mahasiswa, Nomor Buku 3. Relasi Anggota Dengan Buku = Meminjam 4. 1 : N

5. Anggota = Nama Mahasiswa, Alamat Mahasiswa Buku = Judul, Pengarang, Penerbit, Tahun Terbit

Langkah 1 Langkah 2 Langkah 3 ANGGOTA BUKU ANGGOTA BUKU No_mhs No_buku No_mhs ANGGOTA No_buku BUKU Meminjam

(10)

10 Langkah 4 Langkah 5 No_mhs ANGGOTA No_buku BUKU Meminjam 1 N N Meminjam 1 ANGGOTA No_mhs Nama Alamat BUKU No_buku Pengarang Penerbit Thn_Terbit

(11)

11 BAB IV

TEKNIK NORMALISASI

Normalisasi adalah teknik perancangan yang banyak digunakan sebagai pemandu dalam merancang basisdata relasional”. Pada dasarnya, normalisasi adalah proses dua langkah yang meletakkan data dalam bentuk tabulasi dengan menghilangkan kelompok berulang lalu menghilangkan data yang terduplikasi dari tabel relasional.

Tujuan normalisasi :

1. Mengatur data dalam kelompok-kelompok sehingga masing-masing kelompok hanya menangani bagian kecil sistem.

2. Meminimalkan jumlah data yang berulang dalam basisdata.

3. Membuat basisdata yang datanya diakses dan dimanipulasi secara cepat dan efisien tanpa melupakan integrasi data.

4. Mengatur data sedemikian rupa sehingga ketika memodifikasi data, anda hanya mengubah pada suatu tempat.

Aturan Normalisasi

1. Hilangkan kelompok berulang, buat tabel terpisah untuk setiap himpunan atribut yang

berhubungan dan tentukan kunci utama pada masing-masing tabel.

2. Hilangkan data berulang, jika sebuah atribut hanya tergantung pada sebagian kunci utama gabungan, pindahkan atribut ke tabel lain.

3. Hilangkan kolom yang tidak tergantung pada kunci, jika atribut tidak tergantung pada kunci, pindahkan atribut ke tabel lain.

4. Pisahkan relasi majemuk, tidak ada tabel yang bias mengandung dua atau lebi relasi 1:n atau n:m yang tidak berhubungan langsung.

5. Pisahkan relasi majemuk yang berhubungan secara semantik, ada batasan pada informasi yang memperbolehkan pemisahan relasi many-to-many yang berhubungan secara logis. 6. Bentuk normal optimal, sebuah model hanya dibatasi oleh fakta sederhana.

7. Bentuk normal domain-key, sebuah model harus terbebas dari semua anomaly

Tahapan Normalisasi

1. Bentuk Normal Kesatu (1 NF / First Normal Form)

Bentuk Bentuk Normal Kesatu mempunyai ciri yaitu setiap data dibentuk dalam file flat, data dibentuk dalam satu record demi satu record dan nilai dari field berupa “atomic

(12)

12

value”. Tidak ada set atribut yang berulang ulang atau atribut bernilai ganda (multi value). Tiap field hanya satu pengertian, bukan merupakan kumpulan data yang mempunyai arti mendua. Hanya satu arti saja dan juga bukanlah pecahan kata kata sehingga artinya lain.

Atom adalah zat terkecil yang masih memiliki sifat induknya, bila dipecah lagi maka ia tidak memiliki sifat induknya.

2. Bentuk Normal Kedua (2NF)

Bentuk Normal kedua mempunyai syarat yaitu bentuk data telah memenuhi kriteria bentuk Normal Kesatu. Atribut bukan kunci haruslah bergantung secara fungsi pada kunci utama, sehingga untuk membentuk Normal Kedua haruslah sudah ditentukan kunci-kunci field. Kunci field harus unik dan dapat mewakili atribut lain yang menjadi anggotanya. Bentuk Normal Ketiga (3NF)

3. Untuk menjadi bentuk Normal Ketiga maka relasi haruslah dalam bentuk Normal Kedua dan semua atribut bukan primer tidak punya hubungan yang transitif. Artinya setiap atribut bukan kunci harus bergantung hanya pada kunci primer secara menyeluruh. Contoh pada bentuk Normal kedua di atas termasuk juga bentuk Normal Ketiga karena seluruh atribut yang ada di situ bergantung penuh pada kunci primernya.

4. Boyce-Codd Normal Form (BNCF)

Boyce-Codd Normal Form mempunyai paksaan yang lebih kuat dari bentuk Normal ketiga. Untuk menjadi BNCF, relasi harus dalam bentuk Normal Kesatu dan setiap atribut dipaksa bergantung pada fungsi pada atribut super key.

Jenis – Jenis Key Field / atribute kunci dalam database: 1. Super key

Yaitu himpunan dari satu atau lebih entitas yang digunakan untuk mengidentifikasikan secara unik sebuah entitas dalam entitas set.

2. Candidate key

Yaitu satu attribute atau satu set minimal atribute yang mengidentifikasikan secara unik suatu kejadian yang spesifik dari entity.

3. Primary key

Yaitu satu atribute atau satu set minimal atribute yang tidak hanya mengidentifikasikan secara unik suatu kejadian yang spesifik tapi juga dapat mewakili setiap kejadian dari suatu entity

(13)

13 4. Alternate key

Yaitu kunci kandidat yang tidak dipakai sebagai primary key 5. Foreign key

yaitu satu atribute (atau satu set atribute) yang melengkapi satu relationship (hubungan yang menunjukkan ke induknya

Contoh

UNNORMAL FORM SISWA(No_siswa, Nama, Wali_studi, Kelas1, Kelas2, Kelas3)

 Siswa yang punya nomor siswa, nama dan wali studi mengikuti 3 mata pelajaran/ kelas. Disini ada perulangan kelas 3 kali ini bukan bentuk 1 NF.

Contoh Data:

No_siswa Nama Wali_studi Kelas-l Kelas2 Kelas3

22890100 Tanzania Zaman 1234 1543

22890101 Nia Rizki 1234 1775 1543

KELAS(Kode_kelas,nama_kelas,instruktur)

 merupakan bentuk 1NF karena tidak ada yang berganda dan tiap atribute satu pengertian yang tunggal.

Contoh Data:

Kode_kelas Nama_kelas Instruktur 1234 FisikaDasar Suroso 1543 Matematika Paulus

1775 Teknik Program Bagus

No_siswa Nama Wali_studi Kelas-l Kelas2 Kelas3

22890100 Tanzania Zaman 1234 1543

(14)

14 FIRST NORMAL FORM

Bentuk normal kesatu dari bentuk diatas menjadi:

No_siswa Nama Wali_studi Kode_kelas

22890100 Tanzania Zaman 1234

22890100 Tanzania Zaman 1543

22890101 Nia Rizki 1234

22890101 Nia Rizki 1775

22890101 Nia Rizki 1543

PT SANTA PURI FAKTUR PEMBELIAN

BARANG

Jalan Senopati 11 Yogyakarta

Kode Supplier: S02 Tanggal: 02/02/90 Nama Supplier: Gobel Nustra Nomor : 779

Kode Nama Barang Qty Harea Jumlah

R02 RICE COOKER CC3 10.0 150.000, 00 1. 500.000,00

Total Faktur 1. 500.000,00

Jatuh Tempo Faktur: 09/03/90

PT SANTA PURI FAKTUR PEMBELIAN

BARANG

Jalan Senopati 11 Yogyakarta

Kode Supplier: G01 . Tanggal: 07/02/90 Nama Supplier: Gobel Nustra Nomor : 998

Kode Nama Barang Qty Harea Jumlah A01 A02 AC SPLIT 1/2 PK AC SPLIT 1 PK 10.0 10.0 1,350,000 2,000,000 13,500,000 20,000,000 Total Faktur 33,500,000

Jatuh Tempo Faktur: 09/03/90

(15)

15 1. Step I bentuk unnormalized

Bentuklah menjadi tabel unnormalized, dengan mencantumkan semua field data yang ada

Menuliskan semua data yang akan direkam Terlihat record record yang tidak lengkap, sulit untuk membayangkan bagaimana bentuk record yang harus dibentuk untuk merekam data tersebut.

2. Step II bentuk normal kesatu

Bentuklah menjadi bentuk normal kesatu dengan memisah misahkan data pada field field yang tepat dan bernilai atomic, juga seluruh record harus lengkap adanya. Bentuk file adalah flat file.

3. Step III bentuk normal kedua

Pembentukan bentuk normal kedua dengan mencari kunci kunci field yang dapat dipakai sebagai patokan dalam pencarian dan sifatnya unik.

Melihat kondisi dari permasalahan factur di atas dapat diambil kunci kandidat yaitu:  No factur (no fac)

(16)

16  Kode barang

Bentuklah tiga tabel dengan kunci tersebut, lihatlah ketergantungan fungsional field field lain terhadap field kunci, maka didapatkan tabel sebagai berikut:

 Field Qty dan Harga pada tabel tersebut tidak bergantung penuh pada kunci primer nomor nota, ia juga bergantung fungsi pada kode barang. Hal ini disebut sebagai kebergantungan yang transitif dan haruslah dipisahkan dalam dua tabel.

 Masih terdapat redundancy yaitu setiap kali satu nota yang terdiri dari 5 macam barang yang dibeli maka 5 kali pula dituliskan no nota, tanggal nota, tempo, dan totai. Ini harus pula dipisahkan bila terjadi penggandaan tulisan berulang ulang.

4. Step IV Bentuk Normal Ketiga

Bentuk normal ketiga mempunyai syarat setiap tabel tidak mempunyai field yang bergantung transitif, harus bergantung penuh pada kunci utama.

(17)

17 5. Step V Pengujian dengan data contoh

Pengujian disini untuk memastikan kebenaran isi tabel dan hubungan antara tabel tersebut. Ujilah bahwa setiap tabel haruslah punya hubungan dengan tabel yang lainnya. Bila tidak ada penghubunga antar tabel maka dapat dikatakan perancangan untuk membuat satu database adalah gagal.

(18)

18 BAB V

BAHASA QUERY FORMAL

Query adalah suatu objek database yang dapat digunakan untuk menampilkan, menyunting atau menganalisa suatu data dengan memberikan baris-baris perintah tertentu. Pada aplikasi ini sudah dilengkapi dengan Structured Query Language (SQL) yang menjadi standard bahasa dalam mengolah database. Dengan SQL kita dapat mempersingkat penulisan listing program yang panjang karena pada setiap perintahnya dapat mencakup banyak perintah sekaligus.

Bahasa query formal basis data relasional adalah bahasa untuk meminta informasi dari basis data. Bahasa query relasional formal merupakan bahasa antara yang digunakan basis data, yaitu SQL dikonversi menjadi bahasa relasional formal sehingga dapat diterapkan sekumpulan informasi untuk memperoleh query paling efisien.

Terdapat dua jenis bahasa query relasional formal yang utama, yaitu: 1. Aljabar relasional.

2. Kalkulus relasional

Aljabar Relasional

aljabar relasional merupakan kumpulan operasi terhadap relasi dimana setiap operasi menggunakan satu atau lebih relasi untuk menghasilkan satu relasi yang baru dan termasuk kategori prosedural dan juga menyediakan seperangkat operator untuk memanipulasi data.

Operasi Dalam Aljabar Relasional

Operasi-operasi dasar dalam aljabar relasional adalah sebagai berikut :

1. Operasi selection (σ)

Operasi select berfungsi untuk menyeleksi tuple-tuple yang memenuhi predikat yang diberikan dari sebuah tabel relasi. Operasi select menyeleksi tuple-tuple yang memenuhi predikat yang diberikan. Digunakan symbol sigma (σ) untuk menunjukkan operasi select. Predikat muncul sebagai subcript dari σ. Argumen relasi diberikan dalam kurung yang mengikuti σ.

(19)

19

2. Operasi projection (π)

Operasi project berfungsi untuk memilih nilai atribut-atribut tertentu saja dari sebuah tabel relasi. Operasi project disimbolkan dengan symbol phi (π). Nama-nama atribut yang diinginkan tampil ditulis sebagai subcript π.

3. Operasi cartesian (x)

Operasi cartesian product berfungsi untuk mengkombinasikan informasi yang ada dalam 2 tabel relasi atau lebih dan menghasilkan sebuah tabel relasi yang baru.

4. Operasi union (U)

A ∪ B adalah relasi dengan heading (atribut) yang sama untuk setiap A dan B, dimana terdiri dari himpunan semua tuples yang terdapat pada A atau B atau kedua-duanya. Operasi union berfungsi untuk mendapatkan gabungan nilai atribut dari sebuah tabel relasi dengan nilai atribut dari tabel relasi lainnya.

5. Opersi set – difference (-)

Operasi set difference berfungsi untuk mendapatkan nilai yang ada dalam sebuah tabel relasi, tapi tidak ada dalam tabel relasi lainnya. A MINUS B adalah relasi dengan heading (atribut) yang sama untuk setiap A dan B, dimana terdiri dari himpunan semua tuples yang terdapat pada A, tetapi tidak terdapat pada B.

6. Operasi rename (ρ)

Dalam operasi himpunan Cross – Product, bisa menimbulkan terjadinya Konflik Penamaan, karena Cross – Product bisa menghasilkan suatu relasi dari 2 relasi dengan skema yang sama, sehingga skema hasil akan muncul field dengan nama yang sama. Operator Renaming (r) digunakan untuk menghindari terjadinya Konflik Penamaan tersebut.

(20)

20

Operasi turunan dalam aljabar relasional adalah sebagai berikut :

1. Operasi set –interface 2. Operasi natural join 3. Operasi theta join

4. Operasi devision

Kalkulus Relasional

Kalkulus relasional adalah bahasa query yang non prosedural. Bahasa ini mendeskripsikan informasi yang diinginkan tanpa memberi prosedurnya secara detil untuk mendapatkan informasi tersebut.

Kalkulus relational dibagi menjadi dua : 1. Kalkulus relasional tupel

Mendiskripsikan informasi tanpa perlu memberikan prosedur/cara spesifik untuk memperoleh infomasi tersebut. konsep dari kalkulus relasional tupel adalah konseb variabel tupel. Dimana variabel merepresentasikan tupel-tupel padarelasi dan digunakan untuk mengekstrak data dari relasi. Komponen-komponen lain rumus kalkulus tupel adalah kualifikasi data dengan membatasi nilai-nilai dari atribut-atribut yang dispesifikasikan.

Query pada kalkulus realsional tupel dapat diekspresikan dengan: {t|P(t)}

Yaitu himpunaan semua tupel t sehingga predikat P bernilai true untuk t, notasi t[A] untuk menunjukan nilai tuple t pada atributr A, dan menggunakan t ϵ r untuk menunjukan nilai tuple t di relasi r. Predikat P adalah berupa rumus, beberapa rumus, beberapa variabel tuple dapat muncul di rumus.

2. Kalkulus relasional domain

Kalkulus realsional domain menggunakan variable-variable pada nilai-nilai domain atribut, bukan nilai-nilai untuk sebuah tupel. Ekspresi pada relasional domain berbentuk:

{<X1,X2, ... ,Xn>|P(X1,X2, ... , Xn)}

(21)

21

P menyatakan rumus-rumus yang disusun dari atom-atom.

(22)

22 BAB VI

BAHASA QUERY KOMERSIAL

Struktur Query Language (Sql)

SQL dipublikasikan oleh E.F. CODD (1970) mengenai model relational. Kemudian pada tahun 1974, D. Chamberlin dan R.F. Boyce mengembangkan bahasa query untuk memanipulasi dan mengekstraksi data dari basisdata relational.

Sasaran SQL

1. Menciptakan basis data dan struktur relasi 2. Melakukan menajemen data tingkat dasar 3. Membentuk query sederhana dan kompleks

4. Melakukan tugas-tugas dengan seminimal mungkin memakai struktur dan sintaks perintah relatif mudah dipelajari

5. Harus portabel Jenis SQL 1. Interactive SQL 2. Static SQL 3. Dynamic SQL Subdivisi SQL

1. DDL (Data Definition Language)

Query-query ini digunakan untuk mendefinisikan struktur atau skema basis data 2. DML (Data Manipulation Language)

Query-query ini digunakan untuk manajemen data dalam basis data 3. DCL ( Data Control Language)

(23)

23 Pengelompokan Statemen Sql

1. Data Definition Language (DDL)

CREATE DATABASE DROP DATABASE

CREATE TABEL DROP TABEL

CREATE INDEX DROP INDEX

CREATE VIEW DROP VIEW

ALTER TABLE

2. Data Manipulation Language

INSERT, SELECT, UPDATE, DELETE

3. Data Access

GRANT , REVOKE

4. Data Integrity

RECOVER TABLE

5. Auxiliary

SELECT INTO OUTFILE, LOAD, RENAME TABLE

Kasus Data Definition Language (DDL) A. CREATE

1. Pembuatan Database

Nama Database adalah yang dapat mewakili suatu kejadian dapat berupa nama organisasi atau perusahaan.

Sintaks : CREATE DATABASE nama_database Contoh : Buat database dengan nama PT.ABC

CREATE DATABASE PT.ABC

2. Pembuatan Tabel

(24)

24 ( nama_kolom1 tipe_data_kolom1, nama_kolom2,tipe_data_kolom2,….)

Contoh :

Buat struktur tabel dengan nama tabel MHS dengan data NIM char(8), NAMA char(25), ALAMAT char(30)

CREATE TABLE MHS (NIM char(8) not null, NAMA char(25) notnull, ALAMAT char(30) notnull)

3. Pembuatan Index

Sintaks : CREATE [UNIQUE] INDEX nama_index ON nama_table (nama_kolom) ;

Contoh :

Buat index data mahasiswa berdasarkan NIM dengan nama MHSIDX Dimana NIM tidak boleh sama

CREATE UNIQUE INDEX MHSIDX ON MHS(NIM)

4. Pembuatan View Sintaks :

CREATE VIEW nama_view [ (nama_kolom1,….) ] AS SELECT statement

[WITH CHECK OPTION] ;

Contoh :

Buat view dengan nama MHSVIEW yang berisi semua data mahasiswa CREATE VIEW MHSVIEW

AS SELECT * FROM MHS

B. DROP (MENGHAPUS) 1. Menghapus Database

(25)

25 2. Menghapus Tabel

Sintaks : DROP TABLE nama_table ;

3. Menghapus Index

Sintaks : DROP INDEX nama_index ;

4. Menghapus View

Sintaks : DROP VIEW nama_view ;

Contoh :

DROP DATABASE Mahasiswa; DROP TABLE MHS;

DROP INDEX MHSIDX; DROP VIEW MHSVIEW;

C. ALTER TABLE (MERUBAH STRUKTUR TABEL) Sintaks : ALTER TABLE nama_tabel

ADD nama_kolom jenis_kolom [FIRST | AFTER nama_kolom]

CHANGE [COLUMN] oldnama newnama MODIFY nama_kolom jenis kolom, … DROP nama_kolom

RENAME newnama_tabel

Contoh :

1. Tambahkan kolom JKEL dengan panjang 1 char pada tabel MHS ALTER TABLE MHS ADD JKEL char(1);

2. Ubah panjang kolom MTKULIAH menjadi 30 char

ALTER TABLE MKUL MODIFY COLUMN MTKULIAH char(30);

3. Hapus kolom JKEL dari data table MHS ALTER TABLE MHS DROP JKEL;

(26)

26 Data Manipulation Language (DML) 1. INSERT

Sintaks : INSERT INTO Nama_tabel [(nama_kolom1,…)] Contoh :

Masukan data matakuliah Berkas Akses dengan kode KK222 dan besarnya 2 INSERT INTO MKUL VALUES(“KK222”,”Berkas Akses”, 2);

2. UPDATE

Sintaks : UPDATE nama_tabel

SET nama_kolom = value_1 WHERE kondisi ;

Contoh :

Ubah alamat menjadi “Depok” untuk mahasiswa yang memiliki NPM “50096487” UPDATE MHS

SET ALAMAT=”Depok” WHERE NPM=”50096487”;

DELETE

Sintaks : DELETE FROM nama_table WHERE kondisi Contoh :

Hapus data nilai matakuliah “KK021” bagi mahasiswa yang mempunyai NPM “ 10296832”

DELETE FROM NILAI

WHERE NPM=”10296832” AND KDMK=”KK021”

. SELECT

Sintaks : SELECT [DISTINCT | ALL] nama_kolom FROM nama_tabel

[ WHERE condition ] [ GROUP BY column_list ] [HAVING condition ]

(27)

27 Contoh :

a. Tampilkan semua data mahasiswa

SELECT NIM,NAMA,ALAMAT FROM MAHASISWA; Atau

(28)

28 BAB VII

FRAGMENTASI DATA

Merupakan sebuah proses pembagian atau pemetaan database dimana database dipecah-pecah berdasarkan kolom dan baris yang kemudian disimpan didalam site atau unit komputer yang berbeda dalam suatu jaringan data, sehingga memungkinkan untuk pengambilan keputusan terhadap data yang telah terbagi.

Secara umum proses fragmentasi ini dibagi kedalam tiga jenis, yaitu: 1. Fragmentasi horizontal

Fragmentasi horizontal ini terjadi ketika suatu data yang berada pada suatu table dipisah ke dalam beberapa table yang lain. Tabel-tabel yang lain tersebut mempunyai struktur yang sama persis dengan table yang asli. Fragmentasi horizontal dibagi menjadi dua yaitu:

a. Primary horizontal fragmentation

Merupakan horizontal fragmentation dimana suatu data dalam table secara horizontal dipecah berdasarkan pada suatu nilai dalam satu atau lebih kolom tertentuk

b. Derived horizontal fragmentation

Merupakan suatu teknik horizontal fragmentation dimana data yang berada pada suatu table secara horizontal dipecah ke dalam beberapa table yang lain, dengan kriteria data yang dimasukan tergantung apakah data tersebut berelasi yang dengan data yang berada di dalam table yang dipecah secara primary horizontal fragmentation atau tidak

2. Fragmentasi vertical

Merupakan suatu teknik fragmentasi data dimana data dipecah kedalam beberapa table yang merupakan hasil pemisahan beberapa kolom yang berada pada table utama. Tabel yang difragmentasi secara vertical harus dapat dikembalikan lagi seperti semula (reconstruct)

3. Fragmentasi hybrid

(29)

29 Fungsi Fragmentasi : 1. Penggunaan 2. Efisiensi 3. Paralleslisme 4. Keamanan

Kerugian fragmentasi yaitu :

Kinerja yang dapat turun karena data tersebar dan butuh proses untuk penggabungan kembali Integritas yang dapat terganggu dikarenakan kegagalan pada salah satu site database server.

CONTOH KASUS JENIS-JENIS FRAGMENTASI

(30)

30

Fragmentasi Horisontal terbagi menjadi 3 fragment yang berbeda berdasarkan Mt_Kuliah

1. Relasi Mt_Kuliah=“Sistem Basis Data” Mt_Kuliah=“Sistem Basis Data” (Ujian)

2. Relasi Mt_Kuliah=“Peranc. Sistem” Mt_Kuliah=“Peranc. Sistem” (Ujian)

3. Relasi Mt_Kuliah=“Visual Basic” Mt_Kuliah=“Visual Basic” (Ujian)

(31)

31

Fragment di atas memenuhi kondisi jika Nama_Mhs dan Mt_Kuliah adalah hal-hal yang memenuhi syarat

Fragmentasi vertical:berdasarkan dekomposisi-nya dengan menambahkan tupel id

Relasi 1 = NIM, Nama_Mhs, Mt,Kuliah, Nil_Akhir, Grade, Tuple_ID p NIM,Nama_Mhs,Mt,Kuliah,Nil_Akhir,Grade,Tuple_ID (UJian)

(32)

32

Relasi 2 = NIM,Kode_MK,Nil_Akhir,Grade,Tuple_ID p NIM,Kode_MK,Nil_Akhir,Grade,Tuple_ID (Ujian)

Terdapat relasi berdasarkan Mata Kuliah yang sama Relasi 1a.

p NIM,Nama_Mhs,Mt_Kuliah,Nil_Akhir,Grade,Tuple_ID(s Mt_Kuliah=“Sistem Basis Data” (Ujian))

Relasi 1b.

p NIM, Nama_Mhs, Mt_Kuliah, Nil_Akhir, Grade, Tuple_ID(s

(33)

33 Relasi 1c

p NIM,Nama_Mhs,Mt_Kuliah,Nil_Akhir,Grade,Tuple_ID(s Mt_Kuliah=“Visual Basic” (Ujian))

Bagaimana bentuk database untuk data yang telah mengalami proses fragmentasi?

Fragmentasi data merupakan langkah yang diambil untuk menyebarkan data dalam database terdistribusi . Selanjutnya akan dibahas apa yang dimaksud Database terdistribusi.

Database Terdistribusi

Yaitu kumpulan data yang digunakan bersama yang saling terhubung secara logik tetapi tersebar secara fisik pada suatu jaringan komputer.Karakteristik Database terdistribusi, yaitu : 1. Kumpulan data yang digunakan bersama secara logik tersebar pada sejumlah komputer

yang berbeda

2. Komputer yang dihubungkan menggunakan jaringan komunikasi

3. Data pada masing-masing situs dapat menangani aplikasiaplikasi lokal secara otonom 4. Data pada masing situs dibawah kendali satu DBMS

(34)

34

BENTUK-BENTUK TOPOLOGI DISTRIBUSI DATA : a. Fully Connected network

(35)

35 c. Tree Strutured Network

(36)

36 e. Star network

Keuntungan Dan Kerugian Database Terdistribusi KEUNTUNGAN :

1. Secara alami mengikuti struktur organisasi 2. Adanya otonomi lokal

3. Sifatnya dapat dipakai secara bersama 4. Peningkatan ketersediaan

5. Peningkatan kehandalan 6. Peningkatan kinerja 7. Ekonomis

8. Pertumbuhan yang modular

KERUGIAN :

1. Harga software mahal (Biaya) 2. Kompleksitas

3. Kelemahan dalam keamanan 4. Sulitnya menjaga keutuhan data 5. Kurangnya standar

6. Kurangnya pengalaman

Referensi

Dokumen terkait

Masyarakat di area buffer Pelabuhan Tanjung Emas menggunakan insektisida rumah tangga sebagian besar yaitu ≤ 15 tahun dengan persentase 58,18% dengan frekuensi penggunaan

Tarif Retribusi Pemakaian Kekayaan Daerah yang tercantum dalam Peraturan Daerah Kabupaten Kulon Progo Nomor 10 Tahun 2011 tentang Retribusi Pemakaian Kekayaan

Grafik pengendali dalam penerapannya digunakan untuk mengawasi proses yaitu data sampel dikumpulkan dan digunakan selanjutnya dibuat grafik pengendali, dan apabila

Menilai perubahan neuropatik di uremia adalah menantang karena mereka juga mungkin berhubungan dengan faktor lain, seperti diabetes, vaskulitis, atau gangguan gizi..

Penelitian ini bertujuan untuk mengetahui peningkatan hasil pembelajaran kemampuan menulis teks berita menggunakan model pembelajaran Snowball Throwing pada siswa kelas

Kesiapan Bikker dan Geleijnse menjadi martir dalam tugas penginjilan antara lain diungkapkan oleh salah seorang keluarga Bikker di Assen, Belanda bahwa “Bikker dan Geleijnse

Hadhrat Masih Mau’ud ‘alaihis salaam pertama menarik perhatian kita kepada zuhud dan kemudian kepada takwa dan memberi contoh dari Firman Allah yang menyatakan bahwa

37 Wawancara pada tanggal 12 September 2016 pukul 11.00 WIB dengan pangeran Rintoisworo dan pangeran Jatiningrat(keduanya adalah putra Sultan Hamengku Buwono VIII