Anda di halaman 1dari 22

MAKALAH BASIS DATA

PERANCANGAN DAN IMPLEMENTASI BASIS DATA


YANG MENGGUNAKAN WEB DAN VISUAL STUDIO

Disusun Oleh :
Anggi Pratiwi (21110319)
Siti Nurhayati (21110805)
Lulu Fitriani (21110791)
Naufal ghani Al Rapi (21110279)

STMIK MARDIRA INDONESIA


TEKNIK INFORMATIKA SISTEM INFORMASI
TAHUN 2022
KATA PENGANTAR

Syukur alhamdulillah kami ucapkan ke hadirat Allah SWT, yang telah melimpahkan
rahmat serta karunia-Nya sehingga kami dapat menuntaskan makalah Sistem Basis Data yang
berjudul “Basis Data Perancangan Dan Implementasi Basis Data yang Menggunakan Web Dan
Visual Studio”.
Makalah ini dibuat dalam rangka memenuhi tugas yang diberikan dosen untuk memahami
perihal perencanaan dengan harapan mendapatkan manfaat serta melakukan apa yang telah
menjadi tugas mahasiswa.
Kami menyadari bahwa makalah ini tentu masih banyak kekurangannya. Oleh karena itu
kami mengharapkan saran, kritik, serta masukan – masukan dari para pembaca demi
kesempurnaan makalah ini. Harapan kami semoga makalah ini bisa bermanfaat dan berguna bagi
para pembaca umumnya serta ilmu pengetahuan khususnya.

Bandung, Juni 2022

DAFTAR ISI
i
KATA PENGANTAR................................................................................................................................................i
DAFTAR ISI.............................................................................................................................................................ii
BAB I..........................................................................................................................................................................1
PENDAHULUAN......................................................................................................................................................1
1.1 Latar Belakang..................................................................................................................................................1
1.2 Tujuan...............................................................................................................................................................1
BAB II........................................................................................................................................................................2
PEMBAHASAN........................................................................................................................................................2
2.1 Konsep Dasar Basis Data (Database)................................................................................................................2
2.2 Basis Data Relational & Perancangan Basis Data............................................................................................3
Basis Data relational...................................................................................................................................................3
Relational Keys...........................................................................................................................................................4
Integrity Constraints....................................................................................................................................................4
2.3 Penjelasan Jenis Model Data Pada Sistem Basis Data......................................................................................5
2.4 Entity Relationship Diagram (ERD).................................................................................................................7
2.5 Teknik Normalisasi...........................................................................................................................................8
2.6 Teknik Normalisasi Lanjutan............................................................................................................................8
2.7.Bahasa Query Formal......................................................................................................................................10
2.8 Structured Query Language (SQL).................................................................................................................14
2.9 Bahasa Query Terapan....................................................................................................................................15
2.10 Basis Data Terdistribusi................................................................................................................................16
BAB III.....................................................................................................................................................................18
PENUTUP................................................................................................................................................................18
3.1 Kesimpulan.....................................................................................................................................................18
3.2 Saran................................................................................................................................................................18
DAFTAR PUSTAKA..............................................................................................................................................19

ii
BAB I
PENDAHULUAN
1.1 Latar Belakang

Basis data adalah kumpulan informasi yang disimpan didalam komputer secara sistematik sehingga dapat
diperiksa menggunakan suatu program komputer untuk memperoleh informasi dari database tersebut. Perangkat
lunak yang digunakan untuk mengolah dan mengambil kueri (query) basis data disebut sistem manajemen basis
data.
Pemrosesan basis data sebagai perangkat andalan sangat diperlukan oleh berbagai institusi dan perusahaan.
Dalam pengembangan sistem informasi diperlukan basis data sebagai media penyimpanan data. Kehadiran basis
data dapat meningkatkan Daya saing perusahaan tersebut. Basis data dapat mempercepat upaya pelayanan kepada
pelanggan, menghasilkan informasi dengan cepat dan tepat sehingga membantu pengambilan keputusan untuk
segera memutuskan suatu masalah berdasarkan informasi yang ada.

1.2. Tujuan

Memahami masalah-masalah operasional yang ada dalam pendekatan file datar terhadap manajemen data,
yang melahirkan konsep basis data. Memahami relasi di antara elemen-elemen yang membentuk lingkungan basis
data. Memahami relasi di anomali-anomali yang disebabkan oleh basis yang tidak dinormalisasi dan kebutuhan
akan normalisasi basis data. Mengetahui tahap-tahap dalam desain basis data, termasuk identifikasi konseptual,
pemodelan data, kontruksi basis data fisik, dan penyiapan pandangan pengguna. Mengetahui fitur-fitur
operasional dari basis data terdistribusi dan mengenal isu-isu yang perlu diperhatikan dalam memutuskan
konfigurasi basis data tertentu.

1
BAB II
PEMBAHASAN

2.1. Konsep Dasar Basis Data (Database)

Pengenalan Basis data

Basis Data (DATABASE) 

Adalah himpunan kelompok data/kumpulan data yang saling berhubungan secara logis dan deskripsinya,
yang disimpan secara bersama sedemikian rupa dan dirancang untuk memenuhi kebutuhna informasi organisasi.
Contoh Penggunaan Basis Data pada aplikasi: aplikasi pengolahan nomor telepon, aplikasi pembayaran gaji
perusahaan, dll.
Tujuan basis Data :
- Prinsip utamanya adalah pengaturan data/arsip.
- Tujuannya utamanya adalah kemudahan dan kecepatan dalam pengambilan data/arsip.

Sistem Basis Data 

Merupakan sistem yang terdiri atas kumpulan tabel data yang saling berhubungan dan sekumpulan
program (DBMS) yang memungkinkan beberapa pemakai program lain untuk mengakses dan manipulasi tabel-
tabel tersebut.
Mempunyai komponen-komponen sebagai berikut:
- DATA 
  Komponen terpenting dari lingkungan DBMS (dari sudut pandang pengguna akhir). Basis data berisi data
operasional dan metadata, "data tentang data".
- SOFTWARE
  Perangkat lunak yang diguakan dalam suatu system bais data. Pengolahan basis data secara fisik tidak dapat
dilakukan pemkai secara langsung tetapi ditangani oleh sebuah perangkat lunak khusu yang disebut (DBSM).
- HARDWARE
  Perangkat keras dalam suatu system basis data, dimana mempunya komponen utama berupa CPU, Storage Unit,
dll.
- PROCEDURES
  Merujuk pada intruksi dan aturan yang mengatur desain dan penggunaan basis data.
- PEOPLE
  Komponen terakhir adalah orang-orang yang terlibat dengan sistem (manusia).   

Peran dalam Lingkungan Database

Terdiri dari:
- Data Admiistrator adalah seseorang yang bertugas untuk merancang logical dan concepyual dari database,
contohnya mengelola sumber data dan merancang pembuatan database.
- Database Administrator adalah seseorang yang bertugas untuk melakukan implementassi terhadap dtabase dan
melakukan realisasi database fisik. Tugasnya juga mencakup kontrol keamanan dan integritas database. 
- Database Designer adalah sesorang yang bertugas untuk mendisain database. Tugas database desaigner dibagi
menjadi dua, yaitu:
  1. Merancang Desain Conceptual/logical Database, yaitu mengidentifikasi entitas, artibut, dan hubungan diantara
keduanya serta memberika batasan.
  2. Merancang desain database secara fisik, yaitu memutuskan bagaimana logical database design terealisasi
secara fisik, dengan memetakan logical database design menjadi tabel-tabel yang teringreritas.
- Application Programer adalah seseorang yang bertugas untuk membuat program aplikasi untuk mengakses
database.
- End-User merupakan sebuah piranti lunak dengan kemampuan C++ Visual Basic, Delphi,Java serta bahasa
pemograman lainnya yang digunakan sesuai kebutuhan.

Bahasa Basis Data

2
Cara berinteraksi antara pemakai dengan basis data diatur dalam suatau bahasa yang ditetapkan oleh
DBMS. Dua bentuk bahasa yaitu, DDL (Data Definition Language) dan DML (Data Manipulation Language).

Keuntungan DBMS

-konsistensi data
-lebih banyak informasi dari jmlah data yang sama
-sharing data
-peningkatan integrasi data
-peningkatan keamanan atau standar layanan

Kekurangan DBMS

-komplesitas
-ukuran
-biaya DBMS 
-biaya perangkat keras tambahan dan konversi teknologi
-peforma
-dampak kegagalam yang besar

2.2. Basis Data Relational & Perancangan Basis Data


Basis Data relational

Adalah basis data yang mempersentasikan data dalam bentuk tabel-tabel, dimana tabel tersebut
dihubungkan oleh nilai-nilai yang sama pada kolom terkait.
komponen penyusun basis data:

- Tabel

Tabel memiliki nama dan terdiri atas baris dan kolom bisa disebut juga relational atau file. Tabel pada suatu basis
data tidak boleh memiliki nama yang sama.

- Kolom/Artibut

Nama lain kolom adalah Field atau Artibut. Kolom yang terdapat dalam suatu tabel tidak boleh memiliki nama
yang sama. Urutan nama boleh sembarang dan tidak mememngaruhi makna dari tabel.

- Domain

Adalah sekumpulan nilai-nilai yang dapat disimpan pada satu atau lebih kolom. Sebuah domain bisa dimiliki
beberapa kolom, tetapi kolom hanya memiliki satu domain. karena domain membatasi dan mengatur nilai yang
dapat disimpan maka disebut domain constraint.

- Baris

Disebut juga dengan record atau tuple. Baris berisikan data dari sebuah objek, pada sebuah tabel harus unik, dapat
diletakan dalam urutan bebas dan tidak mempengaruhi makna dari tabel itu.
 
- Relational Keys

Adalah identifikasi satu atau sekelompok kolom yang nilainya dapat membedakan secara unik.

- Superkey

adalah suatu kelompok kolom yang nilainya secara unik membedakan tuple-tuple pada suatu tabel.

3
- Candidate Key

adalah superkey dimana tidak ada satupun himpunan bagian dari superkey tersebut menjadi superkey lagi dan
tidak semua superkey menjadi candidate key. Candidate key terdiri dari dua kolom atau lebih disebut sebagai
composite key.

- Primary Key

adalah (satu) candidate key yang dipilih (diantara candidate ke lain) untuk membedakan tuple-tuple secara unik
dalam tabel. Jika dalam suatu tabel hanya terdapat satu candidate key, maka key tersebut menjadi primary key.
Jika terdapat lebih dari satu candidate key maka salah satu bisa dijadikan primary key.

- Altenate Key

adalah candidate key yang tidak dijadikan sebagai primary key.

- Foreign Key

adalah satu atau kelompok kolom yang nilainya sama atau terkait dengan candidate key pada tabel lain atau sama.

Skema Tabel (Relation Skema)

adalah informasi dasar yang mendeskripsikan tabel yang terdiri atas nama tabel dan sekumpulan pasangan
domain.
Contoh: Skema Tabel Anggota
Tabel anggota (kode anggota, nama)

Skema Basis Data (Relational Database schema)

adalah sekumpulan skema tabel dengan masing-masing tabel memiliki nama yang berbeda
Contoh: Skema Basis Data Perpustakaan
Tabel anggota (kode anggota, nama)
Tabel buku (kode buku, judul, stok buku)
Tabel prminjaman (kode pinjam, tgl pinjam, kode buku)

Integrity Constraints

adalah domain yang dapat membatasi dan mengatur nilai. Terdapat empat contraints/batasan lain yang
menjaga intergritas data yang disimpan pada basis data.

- Null

adalah nilai pada suatu kolom masih belum diketahui. Ini berarti nilai tersebut tidak dapat diterapkan pada kolom.
Namun null tidak sama dengan nilai numerik nol atau string "-", nol dan spasi adalah nilai, tetapi null menunjukan
tidak adanya nilai.

- Entity Integrity

adalah batasan atau aturan yang menyatakan bahwa kolom-kolom primary key tidak boleh menyimpan null.

- Referential Integrity

adalah batasan yang menyatakan jika suatu tabel memiliki kolom foreign key maka nilai pada foreighn key
tersebut harus sesuai dengan nilai kolom candidate key dan jika tidak demikian maka foreign key dapat dituliskan
null.

4
- General Constraints

adalah  batasan/aturan tambahan yang ditetapkan oleh pemakai atau administrator basis data sesuai aturan yang
ada pada suatau organisasi.
Perancangan Basis Data
proses pembangunan basis data terdiri dari dua tahapan utama:

-Tahapan analisis dan perancangan

adalah tahapan pemetaan model dari dunia nyata menggunakan notasi perancangan basis data tertentu serta
pembuatan deskripsi implementasi basis data.
Tahapan analisis dan perancangan dibagi menjadi tiga, yaitu:
- Perancangan basis data secara konsep
merupakan pembuatan data model dan tidak bergantung pada seluruh aspek fisik basis data. 
- Perancangan basis data secara logis
merupakan proses pembuatan data model berdasarkan data model tertentu, tetapi tidak bergantung pada DBSM
dan implementasi fisik data.
- Perancangan basis data secara fisik
merupakan proses pembuatan deskripsi implementasi basis data pada media penyimpanan skunder.

- Tahapan Implementasi

Tahapan ini menimplementasikan rancangan basis data yang telah dibuat. Implementasi menggunakan aplikasi
klien yang disediakan oleh DBSM terpilih.

2.3. Penjelasan Jenis Model Data Pada Sistem Basis Data

Model Data dapat dikatakan sebagai kumpulan perangkat yang merupakan suatu cara konseptual untuk
menggambarkan dan menjelaskan data, hubungan data, sematik data dan batasan data yang tersimpan dalam basis
data dan bagaimana hubungan antar data untuk digunakan para pemakai secara logik yang terintergrasi di dalam
suatu organisasi. Berdasarkan jenisnya, model data dibagi menjadi tiga jenis, antara lain yaitu :

1. OBDM (Object Based Data Model) = Model Data berbasis Obyek


2. RBDM (Record Based Data Model) = Model data berbasis Record
3. PBDM ( Physical Based Data Model) = Model data berbasis Fisik

1. OBDM (Object Based Data Model) = Model Data berbasis Obyek

Jenis model data berbasis obyek merupakan himpunan data dan prosedur atau relasi yang menjelaskan hubungan
logik antar data dalam suatu basis data berdasarkan pada obyek data. Pada jenis model ini terdiri dari beberapa
bagian yaitu, Entity Relationship Model, Semantic Model dan Binary model.

- Entity Relationship Model

Entyty relationship model atau model data keterhubungan antar entitas yaitu menjelaskan hubungan antar data
dalam sistem basis data berdasarkan suatu presepsi bahwa real world dari obyek-obyek dasar yang mempunyai
hubungan relasi antara obyek-obyek tersebut. Model entity relationship ini pertama diperkenalkan oleh Peter
Chen pada tahun 1976.

Entity Relationship model berisi ketentuan atau aturan khusus yang harus dipenuhi oleh isi database. Aturan
terpenting aalah Mapping Cardinslities, yang menentukan jumlah entity yang dpat dikaitkan dengan entity lainnya
melalui relationship-set.
Elemen-elemen yang digunakan dalam Entity Relationship menggunakan simbol simbol flow dibawah ini:

5
• Semantic Model

Pada dasarnya semantic Model memiliki arti yang hampir sama denga entity relationship model. Hanya perbedaan
yang tampak pada relasi objek dasar yang tidak dinyatakan dengan simbol melainkan meggunakan kata-kata
(semantic). Contohnya pada gambar diatas. Tanda panah menunjukkan adanya relasi antar entity, sedangkan garis
lurus menunjukkan atribut/unsur dari entity.

• Binary Model

Binary model adalah model data yang memperluas definisi dari entity, bukan hanya atribute-atributenya, tetapi
juga tindakan-tindakan.
Relasi memiliki tiga tipe biner, yaitu:
1. One-to-one (1:1). Hubungan terjadi bila setiap instansi entitas hanya memiliki satu hubungan dengan instansi
entitas lain.
2. One-to-many (1:M). Relasi ini terjadi bila setiap instansi dapat memiliki lebih dari satu hubungan terhadap
instansi entitas lain tetapi tidak kebalikannya.
3. Many-to-many (M:N). Hubungan saling memiliki lebih dari satu dari setiap instansi entitas terhadap instansi
entitas lainnya.

2. RBDM (Record Based Data Model) = Model data berbasis Record

Pada jenis model data berbasis record yaitu himpunan data dan prosedur atau relasi yang menjelaskan hubungan
logik antar data dalam suatu basis data model yang didasarkan pada record. Pada jenis model data ini terdapat
beberapa bagian yaitu, Hierarchycal model, Network model, Relational model.

• Hirarki Model

Hirarki model biasa juga disebut tree structure (Struktur Pohon), hubungan bertingkat. Dalam model ini elemen-
elemen penyusunnya disebut node. Dapat berupa rincian data, agregat data, dan record.
Istilah-istilah yang biasa digunakan dalam Model Hirarki
⇒ Root: node yang memiliki kedudukan paling tinggi dalam hirarki
⇒Parent : node yang memiliki kedudukan lebih tinggi
⇒ Child : node yang memiliki kedudukan lebih rendah
⇒ Leaves: node yang tidak mempunyai child.

• Network Model

Mirip dengan hirarki model, dimana data dan hubungan antar data direpresentasikan dengan record dan links.
Perbedaannya terletak pada susunan record dan linknya yaitu network model menyusun record-record dalam
bentuk graph. Sebuah child dapat mempunyai lebih dari satu parent.

• Relational Model

Representasi dalam bentuk tabel yang terdapat sejumlah Bratis yang menunjuk record dan kolom yang menunjuk
atribut.
Model ini banyak digunakan dalam pemodelan dan perancangan Basis Data. Konsep dan terminologi yang
digunakan mirip dengan kondisi real yang dihadapi oleh pemkai sehingga mudah dipahami.

3. PBDM ( Physical Based Data Model) = Model data berbasis Fisik

6
Pada jenis model data berbasis fisik digunakan untuk menguraikan data di tingkat internal atau menjelaskan
kepada pemakai bagaimana data-data dalam basis data disimpan dalam media penyimpanan secara fisik. Model
ini jararang digunakan karena kerumitan dan kompleksitasnya yang justru menyulitkan pemakai. Pada model ini
terdapat beberapa bagian antara lain: Unifying model dan frame memory.

2.4. Entity Relationship Diagram (ERD)

ERD atau entity relationship diagram adalah istilah dari bahasa Inggris yang artinya diagram hubungan
entitas. ERD pun sering disebut dengan model ER atau ER Diagram.

Sederhananya, entity relationship diagram adalah salah satu jenis diagram yang sifatnya lebih struktural dan bisa
digunakan untuk dimanfaatkan dalam suatu desain pada suatu database ataupun pada sebuah business plan.

Selain itu, terdapat banyak sekali komponen yang menjadikan entity relationship diagram, seperti konektor dan
juga simbol yang berbeda-beda. Nantinya, komponen ini akan melakukan visualisasi pada dua informasi yang
dianggap penting.

Informasi pertama adalah entitas utama yang terdapat di dalam ruang lingkup suatu sistem. Sedangkan untuk
informasi kedua adalah hubungan yang terdapat di berbagai entitas itu sendiri.

Berdasarkan penjelasan ini, mungkin sebagian dari Anda sudah bisa memahami sistem entity relationship diagram
ini, karena di dalamnya hanya mencerminkan hubungan antar setiap entitas saja.

Saat kita membahas tentang entitas di dalam entity relationship diagram, maka umumnya entitas yang dimaksud
adalah suatu objek yang berhubungan dengan bisnis. Nah, objek ini bisa berwujud ataupun berbentuk benda
seperti produk barang ataupun bentuk tidak berwujud lainnya seperti entry log, dan lain-lain.

Lalu, entity relationship diagram adalah tentang bagaimana cara entitas tersebut bisa saling berhubungan antara
yang satu dengan yang lainnya di dalam suatu sistem.

Komponen Susunan Entity Relationship Diagram


Terdapat banyak sekali komponen yang terdapat di dalam susunan entity relationship diagram, beberapa
diantaranya adalah sebagai berikut:

1. Entitas

Entitas adalah sekumpulan objek yang nantinya akan diidentifikasi. Ketika sedang membuat ERD, umumnya
suatu entitas akan digambarkan dalam suatu simbol persegi panjang. Disisi lain, entitas yang lemah akan
digambarkan dengan simbol persegi panjang yang kecil di dalam persegi panjang yang lebar.

Masing-masing entitas sudah tentu mempunyai perbedaan. Bila ternyata ada kesamaan, maka entitas tersebut
tidak perlu dicantumkan.

2. Atribut

Setiap entitas selalu mempunyai elemen ataupun atribut agar bisa menjelaskannya dengan baik. Umumnya, atribut
akan digambarkan sebagai simbol. Di dalam entity relationship diagram, terdapat beberapa jenis atribut, seperti
atribut simple, atribut kunci, atribut multinilai, atribut gabungan, dan juga atribut derivatif.

3. Relasi

Relasi ataupun hubungan adalah suatu tingkat ketertarikan pada beberapa entitas dari gabungan lainnya.
umumnya, relasi ini akan dicerminkan dalam simbol berbentuk belah ketupat. Di dalam entity relationship
diagram, relasi ini akan dibagi menjadi beberapa jenis, seperti One to One, One to Many, dan juga Many to Many.

Fungsi Entity Relationship Diagram


Entity relationship diagram (ERD) didesain dengan berbagai fungsi dan tujuannya masing-masing. Namun, fungsi
umum dari entity relationship diagram adalah sebagai berikut:

7
Membantu menganalisis suatu database dengan cara yang lebih cepat dan juga lebih murah. Mampu menjalankan
relasi antar setiap data yang mempunyai keterkaitan dengan berdasarkan objek yang dihubungkan dengan suatu
relasi khusus.

Membantu menjalankan dokumentasi data yang terdapat dalam suatu database dengan cara melakukan analisis
dan identifikasi pada setiap objek ataupun entitas serta relasinya.
Melakukan suatu pengujian model yang sebelumnya sudah dibuat.

2.5. Teknik Normalisasi

Teknik normalisasi adalah suatu usaha untuk membuat sebuah database yang normal atau baik agar desain
tabel-tabel berada dalam bentuk yang benar dan normal dan dapat di definisikan dengan mudah menggunakan
fungsi.

Aturan-aturan bentuk normalisasi de tentukan dalam bentuk normal. Bentuk normal adalah sebuah aturan yang
diberikan pada tabel-tabel dan relasi-relasi yang ada, dan harus di tempati atau dipenuhi oleh tabel-tabel dan
relasi-relasi tersebut dalam tingkatan dan level yang sudah di tentukan.

Normalisasi dimulai dari bentuk data yang tidak normal atau yang biasa disebut dengan unnormalized dan
diselesaikan melalui tahap-tahap seperti yang di atas, dan telah sesuai prosedur dan urutan kerjanya. Pada tahap
awal di normalisasikan dengan 1NF, apabila tidak selesai maka akan di lanjutkan oleh 2NF dan apabila 2NF juga
tidak dapat menyelesaikan normalisasi maka akan di lanjutkan oleh 3NF dan begitu seterusnya sampai semua data
dan tabel-tabel serta relasinya dapat normal dan baik.

Normalisasi database terdiri dari berbagai bentuk dan fungsi, dalam database setidaknya ada 9 cara
menormalisasikan data seperti 1NF, 2NF, 3NF, 3NF, EKNF, BCNF, 4NF, 5NF, DKNF, dan 6NF. Namun,
biasanya yang digunakan dalam menormalisasi database hanya 4 cara yaitu :

1. Normal Form (1NF)


Berfungsi untuk menghilangkan duplikasi dari kolom yang serupa atau sama dan membuat tabel terpisah untuk
masing-masing data yang berhubungan dan mengidentifikasi berbagai baris dan kolom untuk di seleksi dan
dijadikan foreign key.

2. Normal Form (2NF)

Sebelum menerapkan cara normalisasi 2NF ini terlebih dahulu kita harus menerapkan normalisasi dalam bentuk
1NF. Fungsi dari normalisasi 2NF ini adalah menghapus beberapa subset data yang terdapat pada sebuah tabel
dan menempatkan nya dalam tabel yang berbeda beda, menciptakan hubungan antara tabel yang baru dengan
yang lama dan menciptakan foreign key.

3. Normal Form (3NF)

Normalisasi ini bertujuan untuk menghilangkan semua data atau file yang tidak ada hubungan nya dengan
primary key. Menghapus kolom-kolom yang tidak berhubungan dengan primary key dan memenuhi syarat-syarat
dari normalisasi 2NF.

4. Boyce Codd form (BCNF)

Memiliki hubungan yang erat dengan 3NF biasa disebut juga dengan 3.5NF dan berfungsi untuk menangani
anomali dan overlooping yang tidak dapat di tangani oleh 3NF.

2.6. Teknik Normalisasi Lanjutan

Langkah – Langkah Pembentukan Normalisasi Lanjutan:

Bentuk tidak normal (UnnormalizedForm):

8
Bentuk ini merupakan kumpulan data yang akan di rekam, tidak ada keharusan mengikuti suatu format
tertentu. Dapat saja data tidak lengkap atau terduplikasi. Data dikumpulkan apa adanya sesuai dengan saat
menginput.
Contohdata:
no_siswa Nama PA kelas1 kelas2 kelas3
22890100 Rafi Rachmat 1234 1543 1543
22890101 Thoriq Adi 1234 1775

Ket:PA=PenasehatAkademik
Siswa yg punya nomor siswa, nama, dan PA mengikuti 3 mata pelajaran/kelas. Disini ada perulangan kelas 3
kali ini bukan bentuk 1 NF

Bentuk Normal Ke Satu(1NF/FirstNormalForm):

Suatu relasi 1NF jika dan hanya jika sifat dari setiap relasi atributnya bersifat atomik.
Atom adalah zatterkecil yang masih memiliki sifatinduknya, bila dipecah lagi maka ia tidak memiliki sifat
induknya.

Ciri-ciri1NF:

> Setiapdatadibentukdalamflatfile,datadibentukdalamsaturecorddemisaturecord nilai dari field berupa


“atomic value
> Tidakadasetatributeyangberulangataubernilaiganda
> Tiapfield hanyasatupengertian
No_siswa Nama Pa Kode_kelas
22890100 Rafi Rachmat 1234
22890100 Rafi Rachmat 1543
22890101 Thoriq Adi 1234
22890101 Thoriq Adi 1775
22890101 Thoriq Adi 1543

Bentuk Normal Kedua (2NF/Second Normal Form):

Bentuk normal kedua mempunyai syarat yaitu bentuk data telah memenuhi kriteria bentuk normal kesatu.
Atribute bukan kunci harus lah bergantung secara fungsi pada kunci utama/primary key. Sehingga untuk
membentuk normal kedua harus lah sudah ditentukan kunci-kunci field. Kunci field harus lah unik dan dapat
mewakili attribute lain yang menjadi anggotanya.

Misal:
Daricontoh relasi Siswa pada I NF terlihat bahwa kunci utama/primary key adalah nomor siswa. Nama siswa
dan bergantung fungsi pada no_siswa, tetapi kode_kelas bukanlah fungsi dari siswa, maka file siswa dipecah
menjadi 2 relasi
Relasi Siswa
no_siswa Nama Pa
22890100 Rafi Rachmat
22890101 Thoriq Adi

Dan
Relasi ambil_kelas
No_siswa Kode_kelas
22890100 1234
22890100 1543
22890101 1234
22890101 1775
22890101 1543

Bentuk Normal Ketiga (3NF/Third Normal Form)

9
Untuk menjadi bentuk normal ketiga maka relasi harus lah dalam bentuk normal kedua dan semua attribute
bukan primer tidak punya hubungan yang transitif. Dengan kata lain, setiap attribute bukan kunci harus lah
bergantung hanya pada primary key dan pada primary key secara menyeluruh.

Contoh pada bentuk normal kedua di atas termasuk juga bentuk normal ke tiga karena seluruh atribute yang
ada disitu bergantung penuh pada kunci primernya

Boyce-Codd Normal Form(BCNF)

BCNF mempunyai paksaan yang lebih kuat dari bentuk normal ketiga. Untuk menjadi BCNF, relasi harus
dalam bentuk normal kesatu dan setiap attribute harus bergantung fungsi pada atribute superkey
Pada contoh dibawah ini terdapat relasi seminar dengan ketentuan sbb:
Kunci primeradalahno_siswa+seminar.
Siswa boleh mengambil satu atau dua seminar.
Setiap siswa dibimbing oleh salah satu diantara 2 instruktur seminar tsb.
Setiap instruktur boleh hanya mengambil satu seminar saja.

Pada contoh ini no_siswa dan seminar menunjuk Seorang instruktur:


Relasi seminar
No_siswa Seminar Instruktur
22890100 2281 Sidoel
22890101 2281 Paktile
22890102 2291 Mandra
22890101 2291 Basuki
22890109 2291 Basuki

Bentuk relasi seminar adalah bentuk normal ketiga, tetapi tidak BCNF karena nomor seminar masih
bergantung fungsi pada instruktur, jika setiap instruktur dapat mengajar hanya pada satu seminar. Seminar
bergantung fungsi pada satu attribute bukan superkey seperti yang disyaratkan oleh BCNF.
Makarelasiseminarharuslahdipecah menjadi dua yaitu :

Relasi pengajar
Instruktur Seminar No_siswa Instruktur
Sidoel 2281 22890100 Sidoel
Paktile 2281 22890101 Paktile
Mandra 2291 22890102 Mandra
Basuki 2291 22890101 Basuki
22890109 Basuki

BentukNormalKeEmpat(4NF)

Relasi R adalah bentuk 4NF jika dan hanya jika relasi tersebut juga termasuk BCNF dan semua
ketergantungan multi value adalah juga ketergantungan fungsional

Bentuk Normal KeLima(5NF)

Disebut juga PJNF (Projection Join Normal Form) dari 4NF dilakukan dengan menghilangkan ketergantungan
join yang bukan merupakan kunci kandidat.

2.7. Bahasa Query Formal

Bahasa Query Formal adaalah Language yang digunakan oleh user untuk mendapatkan informasi dari
basis data. Aljabar Relational adalah kumpulan operasi terhadap relasi, dimana setiap operasi menggunakan satu
atau lebih relasi untuk menghasilkan satu relasi yang baru.

Dalam bahasa Query Formal, ada dua dasar


pembentukan bahasa Query, yaitu Aljabar Relasional, dan Kalkulus Relasional:

1. Aljabar Relasional
10
Adalah kumpulan operasi terhadap relasi, dimana setiap operasi menggunakan satu atau lebih relasi untuk
menghasilkan satu relasi yang baru.

Bahasa Query yang didasarkan pada operasi-operasi dalam Aljabar Relasional merupakan bahasa query yang
Prosedural.

OPERATOR RELATIONAL

1. Restrict ( σ ) adalah Pemilihan tupel atau record


2. Project ( π ) adalah pemilihan attribute atau field
3. Divide ( ÷ ) adalah membagi
4. Join ( θ ) adalah menggabungkan

ALJABAR RELASIONAL

Operator pada aljabar relational dibagi menjadi 2 kelompok:


1. Operator dasar untuk fundamental operational
2. Operator tambahan untuk additional operasional

Tabel dibawah ini adalah contoh untuk mengerjakan perintah – perintah Relation Algebra:
RELASI : MATA KULIAH

RELASI : MAHASISWA

RELASI : REGISTRASI

RELASI : DOSEN

11
Operator Dasar

a. Selection ( σ ) Lower Case Omega


Operasi selection menyeleksi tupel-tupel pada sebuah relation yang memenuhi predicate/syarat yang sudah
ditentukan
Contoh :
1. Mencari tuple-tuple dari MAHASISWA yang memiliki jenis kelamin laki-laki, Ekspresi aljabar relational :
σ J_KEL=“LAKI-LAKI” (MAHASISWA)
2. Tampilkan data mata kuliah yang memiliki kode 360 atau yang memilki sks 4
σ KD_MK=“306” V SKS=4 (MATAKULIAH)

b. Projection ( π )
Operator projection beroperasi pada sebuah relation, yaitu membentuk relation baru dengan mengcopy atribute-
atribute dan domain-domain dari relation tersebut berdasarkan argumen-argumen pada operator tersebut.
Contoh :
Tampilkan nama beserta gaji dari dosen
πnama_dos,gaji (DOSEN)

c. Cartesian product ( X )
Operator dengan dua relasi untuk menghasilkan table hasil perkalian kartesian.
Contoh :
Tampilkan nid,nama_d (dari relasi Dosen), nama_mk (dari relasi Matakuliah),
thn_akademik,smt,hari,jam_ke,waktu,kelas (dari relasi Mengajar) dimana semester mengajar adalah pada
semester ‘1’. p nid, nama_d, nama_mk, thn_akademik, smt, hari, jam_ke, waktu, kelas ( s smt=1 ÙDosen.nid =
Mengajar.nid Ùmengajar.kdmk = Matakuliah.kdmk (DosenxMatakuliahxMengajar))Operator

d. Union ( ∪ )
Operasi untuk menghasilkan gabungan tabel dengan syarat kedua tabel memiliki atribut yang sama yaitu
domain atribut ke-i masing-masing tabel harus sama RUS={ X I X E R atau X E S}
Contoh :
Penggabungan berdasarkan kolom kota dari table mahasiswa dengan tabel dosen πkota (mahasiswa) ∪ pkota
(Dosen)

e. Set diference ( – )
Operasi untuk mendapatkan tabel dis uatu relasi tapi tidak ada direlasi lainnya.
R – S = { X I X E R dan X E S }
Contoh : Tampilkan nama dari mahasiswa yang tinggal di depok tetapi bukan berjenis kelamin perempuan

Query I : tampilkan nama yang tinggal di depok


πnama_mhs(σalamat=“DEPOK” (MAHASISWA))

Query II : tampilkan nama yang berjenis kelamin perempuan


πnama_mhs(σj_kel =“PEREMPUAN” (MAHASISWA))

Tampilkan query I minus query II :


πnama_mhs(σalamat=“DEPOK”(MAHASISWA))-
πnama_mhs(σj_kel=“PEREMPUAN” (MAHASISWA))

Operator Tambahan
1. SET INTERSECTION ( ∩ )
Operasi untuk menghasilkan irisan dua tabel dengan syarat kedua tabel memiliki atribut yang sama, domain
atribut ke-i kedua tabel tersebut sama.
2. THETA JOIN
Operasi yang menggabungkan operasi cartesian product dengan operasi selection dengan suatu kriteria.
3. NATURAL JOIN
Operasi menggabungkan operasi selection dan cartesian product dengan suatu kriteria pada kolom
yang sama
4. DIVISION
Merupakan operasi pembagian atas tuple-tuple dari 2 relation
Contoh:

12
2. Kalkulus Relasional

Pengenalan Kalkulus Relasional Tupel dan Domain Kalkulus Relasional Tupel

Kalkulus relasional tupel

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

Sebuah query dalam bahasa ini ditulis :

{ t | P(t) }

artinya, semua tuple t sedemikian sehingga predikat P adalah benar untuk t. Dengan mengikuti notasi terdahulu,
kita gunakan t[A] untuk menyatakan nilai tuple t pada atribut A, dan t ∈ r untuk menyatakan bahwa tuple t berada
dalam relasi r.

Dalam kalkulus relasional ada 2 notasi yang penting, yang pertama adalah “terdapat beberapa (there exists)” yang
ditulis :

∃ t ∈ r ( Q(t) )

artinya, terdapat beberapa tuple t anggota relasi r sedemikian sehingga bahwa predikat Q(t) adalah benar.

Yang kedua adalah “untuk seluruh (for all)” yang ditulis :

∀ t ∈ r ( Q(t) )

artinya, untuk seluruh tupel t anggota relasi r sedemikian sehingga bahwa predikat Q(t) adalah benar.

Kalkulus Relasional Domain

Kalkulus relasional domain juga adalah bahasa query yang non prosedural dan karenanya berhubungan dekat
dengan kalkulus relasional tupel. Berbeda dengan kalkulus relasional tupel, bahasa ini menggunakan variabel
domain yang mengambil nilai dari domain atribut, bukan dari nilai seluruh tupel. Kalkulus relasional domain
merupakan basis untuk bahasa query QBE.

Sebuah ekspresi dalam kalkulus relasional domain adalah berbentuk :

{ < x1, x2, . . . , xn > | P(x1, x2, . . . , xn) }

13
dimana x1, x2, . . . , xn merepresentasikan variabel-variabel domain. P merepresentasikan sebuah formula yang
terdiri dari atom-atom. Sebuah atom dalam kalkulus relasional domain dapat berupa salah satu dari bentuk berikut
ini :

– < x1, x2, . . . , xn > ∈ r, dimana r adalah relasi dengan n atribut dan x1, x2, . . . , xn adalah variabel domain
atau konstanta domain.

– x ϴ y, dimana x dan y adalah variabel domain dan ϴ adalah operator relasional (≤, <, =, ≠, >, ≥). Kita
membutuhkan atribut x dan y mempunyai domain yang bisa diperbandingkan dengan ϴ.

– x ϴ c, dimana x adalah variabel domain, ϴ adalah operator relasional, dan c adalah sebuah konstanta.

Dalam kalkulus relasional domain, seperti halnya dalam kalkulus relasional tupel, kita juga menggunakan notasi
“terdapat beberapa (there exists)” dilambangkan dengan “∃” dan “untuk seluruh (for all)” dilambangkan dengan
“∀”.

2.8. Structured Query Language (SQL)

Structured Query Language (SQL) adalah sistem manajemen database relasional (RDBMS) yang
dirancang untuk aplikasi dengan arsitektur client/server. Istilah client, server, dan client/server dapat digunakan
untuk merujuk kepada konsep yang sangat umum atau hal yang spesifik dari perangkat keras atau perangkat
lunak.

Pada umumnya terdapat 3 (tiga) jenis perintah SQL yang bisa digunakan oleh SQL, yaitu: DDL (Data Definition
Language), DML (Data Manipulation Language), dan DCL (Data Control Language). Berikut ini penjelasan dan
daftar masing-masing perintah SQL tersebut:

DDL atau Data Definition Language

DDL merupakan perintah SQL yang berhubungan dengan pendefinisian suatu struktur database, dalam hal ini
database dan table. Beberapa perintah dasar yang termasuk DDL ini antara lain :

CREATE : Seperti namanya, perintah create digunakan untuk membuat sesuatu, dalam hal ini adalah database
dan table.
ALTER : Perintah alter digunakan untuk merubah struktur atau mengubah informasi. Perintah alter bisa
digunakan untuk database ataupun table.
RENAME : Perintah rename biasanya digunakan untuk mengubah nama table, apabila sebuah table ingin diganti
namanya.
DROP : Perintah drop digunakan untuk menghapus, maka apabila menggunakan perintah ini harus berhati-hati
karena drop dapat mengakses database, tabel, kolom, index, procedure dan yang lainnya.

DML atau Data Manipulation Language

DML merupakan perintah SQL yang berhubungan dengan manipulasi atau pengolahan data atau record dalam
table. Perintah SQL yang termasuk dalam DML antara lain:

SELECT : Perintah select digunakan untuk menampilkan data-data yang ada didalam tabel pada suatu database.
INSERT : Perintah insert digunakan untuk menambahkan data pada tabel yang terdapat didalam database.
UPDATE : Update digunakan untuk mengubah data, atau memodifikasi data yang terdapat didalam tabel.
DELETE : Perintah delete digunakan untuk menghapus data atau record didalam table.

DCL atau Data Control Language

DCL merupakan perintah SQL yang berhubungan dengan manipulasi user dan hak akses (priviledges). Perintah
SQL yang termasuk dalam DCL antara lain :

GRANT : Perintah grant digunakan untuk memberikan hak akses atau izin pada user di database untuk dapat
mengakses database tersebut. Selain itu perintah grant juga dapat digunakan untuk menambahkan user atau
pengguna baru di DBMS.

14
REVOKE : Perintah revoke adalah kebalikan dari perintah grant, perintah revoke digunakan untuk menghapus
atau atau mencabut izin hak akses.

2.9. Bahasa Query Terapan

SQL merupakan bahasa query terapan yang banyak digunakan oleh berbagai DBMS, diterapkan dalam
berbagai development tools dan program aplikasi untuk berinteraksi dengan basis data.

Subdivisi SQL:

1. Data Definition Language (DDL)


Query-query ini digunakan untuk mendefinisikan struktur atau skema basis data.

2. Data Manipulation Language (DML)


Query-query ini digunakan untuk manajemen data dalam basis data.

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 (DML)
INSERT, SELECT, UPDATE, DELETE
3. Data Access
GRANT , REVOKE
4. Data Integrity
RECOVER TABLE
5. Auxiliary
SELECT INTO OUTFILE,
LOAD, RENAME TABLE

3.Data Definition Languange (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 KAMPUS
CREATE DATABASE KAMPUS

2. Pembuatan Tabel
Sintaks : CREATE TABLE nama_table ( nama_kolom1 tipe_data_kolom1,nama_kolom2,tipe_data_kolom2,….)
Contoh :
Buat struktur tabel dengan nama tabel Mahasiswa dengan data NIM char(8), NAMA char(25), ALAMAT
char(30)
CREATE TABLE Mahasiswa (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 Mahasiswa(NIM)

4. Pembuatan View
Sintaks :
CREATE VIEW nama_view [ (nama_kolom1,….) ]
15
AS SELECT statement [WITH CHECK OPTION] ;
Contoh :
Buat view dengan nama MHSVIEW yang berisi semua data mahasiswa
CREATE VIEW MHSVIEW
AS SELECT * FROM Mahasiswa

B. DROP (MENGHAPUS)

1. Menghapus Database
Sintaks : DROP DATABASE nama_db ;
2. Menghapus Tabel
Sintaks : DROP TABLE nama_table ;
3. Menghapus Index
Sintaks : DROP INDEX nama_index ;
4. Menhapus View
Sintaks : DROP VIEW nama_view ;
Contoh :
DROP DATABASE KAMPUS;
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 table Mahasiswa
ALTER TABLE Mahasiswa ADD JKEL char(1);
2. Ubah panjang kolom JKEL menjadi 15 char
ALTER TABLE Mahasiswa MODIFY COLUMN JKEL
char(15);
3. Hapus kolom JKEL dari data table MHS
ALTER TABLE Mahasiswa DROP JKEL;
DDL

2.10 Basis Data Terdistribusi

Basis Data Terdistribusi adalah kumpulan data logic yang saling berhubungan secara fisik terdistribusi
dalam jaringan komputer, yang tidak tergantung dari program aplikasi sekarang maupun masa yang akan datang.

File merupakan kumpulan data yang dirancang untuk suatu aplikasi atau sekumpulan aplikasi yang dekat
hubungannya
Ada dua jenis diantaranya:

1. Terpusat

Transaksi yang mengakses data pada suatu simpul (mesin/server) yang sama dengan simpul dari mana transaksi
tersebut dijalankan.

2. Terdistribusi

Transaksi yang membutuhkan pengaksesan data di simpul yang berbeda dengan simpul dimana transaksi tersebut
dijalankan, atau
transaksi dari sebuah simpul yang membutuhkan pengaksesan data ke sejumlah simpul lainnya.

16
Sifat Database terdistribusi

Ada dua macam sifat database terdistribusi yaitu heterogen dan homogen:

a. Homogen

Homogen berarti database terdistribusi dimana data didistribusikan pada beberapa komputer dengan
menggunakan DBMS (database management system) yang sama. DBMS digunakan dalam database terdistribusi
untuk mengkoordinasikan data pada beberapa node.

b. Heterogen

Heterogen adalah kebalikan dari mana data dalam penyebaran homogen menggunakan DBMS yang berbeda.
Tujuan utama dari database terdistribusi menyediakan akses mudah ke data untuk pengguna di banyak lokasi
terpencil.

Untuk mencapai tujuan ini sistem basis data terdistribusi harus menyediakan apa yang disebut transparansi lokasi,
yang berarti pengguna dalam mengakses data tidak akan terbatas pada tempat, di mana pun dia adalah data
mengakases pengguna dapat.

Tujuan kedua dari database terdistribusi adalah otonomi daerah, kemampuan untuk mengatur database lokal dan
mengoperasikannya sendiri – sendiri terjadi error atau kerusakan koneksi antar komputer.

17
BAB III
PENUTUP
3.1 Kesimpulan

Basis data atau juga disebut database artinya berbasiskan pada data, tetapi secara
konseptual, database diartikan sebuah koleksi atau kumpulan data-data yang saling berhubungan
(relation), disusun menurut aturan tertentu secara logis, sehingga menghasilkan informasi. Untuk
mengelola dan memanggil query basis data agar dapat disajikan dalam berbagai bentuk yang
diinginkan dibutuhkan perangkat lunak yang disebut Sistem Manajemen Basis Data atau juga
disebut Database Management System (DBMS). Penggabungan Database Management System
(DBMS) dengan Basis Data akan membentuk satu kesatuan yang disebut Sistem Basis Data.
Komponen dasar dalam pembuatan basis data dengan adanya data, hardware, software, dan user.
Istilah- istilah dalam basis data juga seyogyanya kita tahu, yaitu: enterprise, entitas, atribut, nilai
data, kunci elemen data, record data. Database menyimpan data dengan baik,akurat,dan relevan.
Database dapat mengurangi duplikasi data/penggandaan data (data redundancy). Database
mengurangi pemborosan tempat simpanan luar.

3.2 Saran

Makalah yang kami susun semoga bisa membantu kita lebih memahami tentang basis data
yang lebih mendalam. Mohon permakluman dari semuanya jika dalam makalah kami ini masih
terdapat banyak kekeliruan baik bahasa maupun pemahaman. Karena tiadalah sesuatu yang
sempurna yang bisa manusia ciptakan.

DAFTAR PUSTAKA

1. Latar belakang dan Tujuan https://nelaindahpratiwi.blogspot.com/2013/01/latar-belakang-


basis-data_27.html
2. Pembahasan Konsep Basis Data https://adiwijayaadam4.blogspot.com/2020/10/konsep-
dasar-basis-data-database.html

18
3. Basis Data Relational & Perancangan Basis Data
https://adiwijayaadam4.blogspot.com/2020/10/basis-data-relational-perancangan-
basis.html
4. kesimpulan dan saran http://www.makalah.my.id/2018/10/makalah-basis-data-
lengkap.html
5. https://www.pro.co.id/jenis-model-data-pada-basis-data/
6. https://www.dicoding.com/blog/memahami-erd/
7. https://yizi.info/pdf-to-docx.html
8. https://mfikri.com/artikel/aturan-dan-teknik-dalam-melakukan-normalisasi-data.html
9. https://ariqfadh.wordpress.com/2018/05/07/bahasa-query-terapan/
10. https://www.dosenpendidikan.co.id/basisdata-terdistribusi/

19

Anda mungkin juga menyukai