Modul Sistem Basis Data
Modul Sistem Basis Data
Teknik Informatika
Mata Kuliah : Sistem Basis Data
Dhanny Permatasari P, MT
Semester Genap
2017/2018
Basis data (database)
elements/components:
2
3
Field adalah kumpulan dari karakter yang membentuk
satu arti, maka jika terdapat field misalnya seperti
NomerBarang atau NamaBarang, maka yang dipaparkan
dalam field tersebut harus yang berkaitan dengan nomer
barang dan nama barang.
Atau definisi field yang lainnya yaitu tempat atau kolom
yang terdapat dalam suatu tabel untuk mengisikan
nama-nama (data) field yang akan di isikan.
4
Record adalah kumpulan field yang sangat lengkap, dan
biasanya dihitung dalam satuan baris.
Tabel adalah merupakan kumpulan dari beberapa record
dan juga field.
File adalah terdiri dari record-record yang
menggambarkan dari satu kesatuan data yang sejenis.
Misalnya seperti file nama barang berisikan data tentang
semua nama barang yang ada.
Data adalah kumpulan fakta atau kejadian yang
digunakan sebagai penyelesaian masalah dalam bentuk
informasi.
Pengertian basis data (database) adalah basis data yang terdiri
dari dua kata, yaitu kata basis dan data. Basis dapat di artikan
markas ataupun gudang, maupun tempat berkumpul.
5
Data adalah kumpulan fakta yang mewakili suatu objek,
misalnya seperti manusia, barang dan sebagainya yang
direkam ke dalam bentuk huruf, angka, simbol, teks,
bunyi, gambar ataupun kombinasinya.
Jadi dapat disimpulkan basis data adalah kumpulan
terorganisasi dari data-data yang saling berhubungan
sedemikian rupa sehingga dapat dengan mudah disimpan,
dimanipulasi, dan dipanggil oleh pemakainya.
Dan Karakter atau character adalah merupakan suatu
bagian data yang terkecil, dapat berupa karakter
numerik, huruf ataupun karakter khusus (special
characters) yang membentuk suatu item data atau field.
Primary key
Secondary key
6
Arsitektur ANSI SPARC dalam Database
ANSI SPARC adalah arsitektur yang digunakan oleh
kebanyakan DBMS komersil.
Arsitektur ini memisahkan DBMS ke dalam tiga
level yaitu level external, conceptual, dan internal.
Level external mengarah kepada bagaimana user
melihat data,
Level conceptual memberikan mapping dan
independensi antara level internal dan external,
sedangkan
Level internal mengarah kepada bagaimana cara
DBMS dan OS melihat data yang ada.
7
ANSI-SPARC singkatan dari American National
Standards Institute, Standards Planning And
Requirements Committee
Adalah abstract design standard untuk Database
Management System (DBMS),
first proposed in 1975.
The ANSI-SPARC model however never became a formal
standard.
No mainstream DBMS systems are fully based on it (they
tend not to exhibit full physical independence or to
prevent direct user access to the conceptual level), but the
idea of logical data independence is widely adopted.
Wiki : https://en.wikipedia.org/wiki/ANSI-
SPARC_Architecture
8
Tujuan
Tujuan dari arsitektur ANSI SPARC dalam database ini adalah
untuk memisahkan masing-masing user view terhadap
database secara physical dengan rincian sebagai berikut:
Masing-masing user harus dapat mengakses data yang sama,
tetapi memiliki customized view yang berbeda terhadap data
tersebut.
User view tidak terpengaruh terhadap perubahan yang
dilakukan oleh view yang lain.
User tidak seharusnya tau mengenai penyimpanan database
secara physical seperti indexing dan hashing.
Database administrator dapat mengubah struktur penyimpanan
database tanpa mempengaruhi user view.
Struktur internal dari database tidak terpengaruh oleh
perubahan aspek physical seperti perubahan hardware storage.
Database Administrator dapat mengubah struktur conceptual
tanpa mempengaruhi seluruh user.
9
Penjelasan setelah ini:
10
Level External
Level external mengarah ke bagaimana user view
dari database tersebut dan mendeskripsikan bagian
database mana yang relevan untuk user tertentu.
View yang berbeda bisa jadi memiliki presentasi
yang berbeda meskipun data yang diakses sama,
misal: format tanggal.
Selain itu view juga dapat berupa data dari
perhitungan seperti usia dsb.
11
Level Conceptual
Level conceptual mendeskripsikan data apa yang
disimpan di database dan bagaimana relationship
(hubungan) di antara data tersebut. Juga mendukung
external view, karena setiap data yang tersedia untuk
user harus tersedia juga di level ini.
Level conceptual berisi tentang struktur logical dari
seluruh database dilihat oleh Database Administrator
yang merepresentasikan:
semua entitas, atributnya dan relationship-nya
constraint dari data
informasi semantic dari data
informasi security dan integrity
12
Level Internal
Level internal mendeskripsikan bagaimana data
disimpan di dalam database.
Level internal merepresentasikan database secara
physical untuk memperoleh performa yang optimal.
Berfokus kepada alokasi data dan index database
serta teknik untuk data compression dan encryption
13
Bahasa Basis Data
DBMS merupakan perantara bagi pemakai dengan
basis data dalam media penyimpanannya (disk,
harddisk, server).
Cara berkomunkasi / berinteraksi antara pemakai
dengan basis data diatur dalam suatu bahasa khusus
yang ditetapkan oleh perusahaan pembuat DBMS.
Bahasa ini disebut sebagai bahasa basis data yang
meliputi sejumlah perintah (statement) yang
diformulasikan dan dapat diberikan user dan
dikenali / diproses DBMS untuk melakukan suatu
aksi / pekerjaan tertentu.
14
Bahasa basis data umumnya dapat ditempelkan
(embbeded) ke bahasa pemrogarman lain, misalkan
ditempelkan kedalam bahasa Java,C/C++, Pascal,
Basic, Fortran, dan lainnya.
Bahasa tempat ditempelkannya instruksi bahasa
basisdata disebut sebagai inang (host language).
Pada program bahasa inag yang ditempeli kode-
kode bahasa basisdata mka saat source program
dikompilasi maka source program terlebih dahulu
dilewatkan ke pre-kompilator (pre-compiler) yang
menterjemahkan instruksi bahasa basisdata menjadi
instruksi asli bahasa pemrograman inang.
15
Setelah itu, kode-kode yang telah dalam bahasa
inang dikompilaasi menggunakan kompilator
bahasa inang sehingga menghasilkan kode biner
yang mengaitkan (link) instruksi – instruksi bahasa
basisdata ke pustaka (library) yang berfungsi
menghubung DBMS.
Hasil – hasil instruksi bahasa basisdata segera
ditangkap program bahasa inang dan diolah sesuai
keperluan aplikasi.
16
Selain itu vendor DBMS juga selalu menyertakan
fasilitas inteaktif memberi perintah ke DBMS secara
langsung.
Cara ini umumnya dipergunakan administrator
untuk menjalankan tugasnya mengolah seluruh
basisdata organisasi.
17
DBMS ( Database Management System ), sistem ini
hanya mengenal bahasa Basis Data , dimana Bahasa
Basis Data merupakan bahasa yang digunakan oleh
user untuk berkomunikasi/berinteraksi dengan
DBMS yang bersangkutan.
Contoh dari Bahasa Basis Data , misalnya SQL,
dBase, QUEL dsb.
18
Komponen Bahasa Basisdata
Berdasarkan fungsinya, bahasa basis data dapat
dipilah ke dalam bentuk :
1. Data Definition Language (DDL)
2. Data Manipulation Language (DML)
3. Data Control Language (DCL)
4. TCL (Transaction Control Language)
19
DDL berfungsi menspesifikasikan skema atau struktur
basisdata, hasil pernyataan DDL adalah himpunan definisi
data yang disimpan secara khusus pada data dictionary (data
directory).
DML berisi sekumpulan operasi manipulasi data pada
basisdata,
DML biasa disebut bahasa query yaitu bahasa untuk meminta
informasi dari basisdata karena komponen paling kompleks di
DML adalah operaasi query.
Sebenarnya DML tidak hanya berisi operasi utnuk query, namun
juga meliputi operasi penghapusan, pembaruan dan penyisipan.
DCL merupakan sub bahasa untuk mengendalikan struktur
internal basisdata, DCL untuk menyesuaikan sistem supaya
lebih efisian dan DCL sangat bergantung pada vendor.
20
Data Definition Language (DDL)
Struktur / skema basis data yang menggambarkan /
mewakili desain basis data secara keseluruhan
dispesifikasikan dengan bahasa khusus yaitu DDL.
Dengan bahasa ini kita dapat membuat tabel (create table)
baru, indeks, mengubah table, menentukan struktur
penyimpanan table, dan lainnya.
Hasil dari kompilasi perintah DDL, adalah
kumpulan table yang disimpan dalam file khusus
yang disebut kamus data (data dictionary).
21
Kamus data merupakan suatu metadata (superdata),
yaitu data yang mendiskripsikan data sesungguhnya.
Contoh perintah DDL dengan Foxpro adalah create matakuliah,
modify report, modify structure, dan lainnya, sedangkan perintah
DDL dengan MS-SQl Server 2000, contohnya adalah create new
database Penjadwalan_mengajar_dosen dan contoh lainnya
adalah new table dosen
DDL yaitu dipakai untuk menggambarkan desain dari
basis data secara menyeluruh.
DDL (Data Definition Language) dapat dipakai untuk membuat
tabel baru, memuat indeks, maupun mengubah tabel.
Hasil dari kompilasi DDL akan disimpan di kamus data.
22
Data Manipulation Language (DML)
Bentuk bahasa basis data untuk melakukan
menipulasi dan pengambilan data pada suatu basis
data.
Manipulasi data pada dabase dapat berupa :
1). Penyisipan / penambahan data pada file / table dalam
suatu basis data. (Insert)
2). Penghapusan data pada file / table dalam suatu basis
data. (Delete)
3). Pengubahan data pada file / table dalam suatu basis
data. (Update)
4). Penelusuran data pada file / table dalam suatu basis
data. (Select)
23
DML misalnya seperti penambahan data yang baru
ke dalam suatu basis data, menghapus data pada
suatu basis data dan mengubah data pada suatu
basis data
Pada level phisik kita harus mendefinisikan
alghoritma yang memungkinkan pengaksesan yang
efisien terhadap data.
Pada level yang lebih tinggi yang dipentingkan
bukan efisien akses, tapi juga efisiensi interaksi
pemakai dengan sistem.
24
DML merupakan bahasa yang bertujuan
memudahkan pemakai untuk mengakses data
sebagaimana direpresentasikan oleh model data.
Ada 2 (dua) jenis DML adalah sebagai berikuit :
1). Prosedural, yang mensyaratkan pemakai menentukan,
data apa yang diinginkan serta bagaimana cara
mendapatkannya.
2). Nonprosedural, yang membuat pemakai dapat
menentukan data apa yang diinginkan tanpa
menyebutkan bagaimana cara mendapatkannya.
25
Contoh paket bahasa prosedural DML : dBase,
FoxBase, sedang
Untuk Contoh Nonprosedural DML : SQL (Structure
Query Language), QBE (Query By Example).
Query
Adalah pernyataan yang diajukan untuk mengambil
informasi di dalam suatu basis data.
Query merupakan bagian dari DML yang untuk
pengambilan informasi disebut Query Language.
26
Data Control Language (DCL)
DCL merupakan sub bahasa untuk mengendalikan
struktur internal basisdata, DCL untuk
menyesuaikan sistem agar lebih efisien.
DCL sangat bergantung pada vendor.
27
SQL
SQL language dibagi menjadi language statements/ command
: DML, DDL, DCL and TCL.
SQL : Structured Query Language
A standardized programming language used for managing
relational databases and performing various operations on the
data.
Menggunakan SQL statements, kita bisa mendefinisikan
structure dari database dengan membuat dan merubah/
transformasi database objects, dan kita bisa memanipulasi
data dalam table dengan menggunakan perintah updates atau
deletions.
Kita juga dapat mengontrol pengguna/ user siapa saja yang
bisa read/write data atau manage transactions untuk membuat
suatu unit pekerjaan.
28
Pada SQL, bahasa didalamnya terdapat
1. Data Definition Language (DDL)
2. Data Manipulation Language (DML)
3. Data Control Language (DCL)
4. TCL (Transaction Control Language)
29
30
31
DML
DML statements affect records in a table. These are
basic operations we perform on data such as
selecting a few records from a table, inserting new
records, deleting unnecessary records, and
updating/modifying existing records.
DML statements include the following:
SELECT – select records from a table
INSERT – insert new records
UPDATE – update/Modify existing records
DELETE – delete existing records
32
DML is short name of Data Manipulation Language which
deals with data manipulation and includes most common SQL
statements such SELECT, INSERT, UPDATE, DELETE etc, and
it is used to store, modify, retrieve, delete and update data in a
database.
SELECT - retrieve data from a database
INSERT - insert data into a table
UPDATE - updates existing data within a table
DELETE - Delete all records from a database table
MERGE - UPSERT operation (insert or update)
CALL - call a PL/SQL or Java subprogram
EXPLAIN PLAN - interpretation of the data access path
LOCK TABLE - concurrency Control
33
DDL
DDL statements are used to alter/modify a database
or table structure and schema. These statements
handle the design and storage of database objects.
CREATE – create a new Table, database, schema
ALTER – alter existing table, column description
DROP – delete existing objects from database
34
DDL is short name of Data Definition Language, which
deals with database schemas and descriptions, of how
the data should reside in the database.
CREATE - to create database and its objects like (table, index,
views, store procedure, function, and triggers)
ALTER - alters the structure of the existing database
DROP - delete objects from the database
TRUNCATE - remove all records from a table, including all
spaces allocated for the records are removed
COMMENT - add comments to the data dictionary
RENAME - rename an object
35
DCL
DCL statements control the level of access that users
have on database objects.
GRANT – allows users to read/write on certain database
objects
REVOKE – keeps users from read/write permission on
database objects
36
DCL is short name of Data Control Language which
includes commands such as GRANT and mostly
concerned with rights, permissions and other
controls of the database system.
GRANT - allow users access privileges to database
REVOKE - withdraw users access privileges given by
using the GRANT command
37
TCL
TCL statements allow you to control and manage
transactions to maintain the integrity of data within
SQL statements.
BEGIN Transaction – opens a transaction
COMMIT Transaction – commits a transaction
ROLLBACK Transaction – ROLLBACK a transaction in
case of any error
38
TCL is short name of Transaction Control Language
which deals with a transaction within a database.
COMMIT - commits a Transaction
ROLLBACK - rollback a transaction in case of any error
occurs
SAVEPOINT - to rollback the transaction making points
within groups
SET TRANSACTION - specify characteristics of the
transaction
39
Model data & konseptual Basis Data
Model Data dalam Sistem Manajemen Basis Data
Model data dapat dikelompokkan berdasarkan konsep pembuatan
deskripsi struktur basis data, yaitu:
a. Model data konseptual (high level) menyajikan konsep tentang
bagaimana user memandang atau memperlakukan data. Dalam
model ini dikenalkan tiga konsep penyajian data yaitu:
Entity (entitas) merupakan penyajian obyek, kejadian atau konsep
dunia nyata yang keberadaannya secara eksplisit didefinisikan dan
disimpan dalam basis data, contohnya Mahasiswa, Matakuliah, Dosen,
Nilai dan lain sebagainya.
Atribute (atribut) adalah keterangan-keterangan yang menjelaskan
karakteristik dari suatu entitas seperti NIM, Nama, Fakultas, Jurusan
untuk entitas Mahasiswa.
Relationship (hubungan) merupakan hubungan atau interaksi antara
satu entitas dengan yang lainnya, misalnya entitas pelanggan
berhubungan dengan entitas barang yang dibelinya.
40
b. Model data fiskal (low level) merupakan konsep bagaimana
deskripsi detail data disimpan ke dalam komputer dengan
menyajikan informasi tentang format rekaman, urutan rekaman,
dan jalur pengaksesan data yang dapat membuat pemcarian
rekaman data lebih efisien.
c. Model data implementasi (representational) merupakan
konsep deskripsi data disimpan dalam komputer dengan
menyembunyikan sebagian detail deskripsi data sehingga para
user mendapat gambaran global bagaimana data disimpan dalam
komputer.
Model ini merupakan konsep model data yang digunakan oleh
model hirarki, jaringan dan relasional.
41
Desain model basis data merupakan sebuah fase penting
dalam pengembangan sebuah Aplikasi Sistem Informasi.
Model data konseptual merupakan sebuah model
pendekatan secara konsep sebelum dikonversi menjadi
model data fisik yang telah berkaitan dengan tujuan
basis data tertentu.
Editor merupakan sebuah tool yang digunakan untuk
mempermudah melakukan desain basis data dengan
pendekatan model data konseptual dan sebagai jembatan
penghubung antara model data konseptual dan model data
fisik.
Editor dapat melakukan konversi antara model data
konseptual dan model data fisik.
42
Editor yang direncanakan ini menerapkan round trip
engineering, yaitu konversi bolak-balik antara data model
konseptual dan data model fisik.
Konversi dilakukan secara otomatis dan realtime.
Perancangan Editor model data ini memaksimalkan
fungsional sistem round trip engineering, dengan tujuan
untuk memberikan kemudahan bagi pengguna dan
perancang basis data merancang basis data dengan
memanfaatkan dan memaksimalkan fungsional tersebut.
43
Perancangan model konseptual basis data dalam
sebuah organisasi menjadi tugas dari Administrator
basis data.
Model konseptual merupakan kombinasi beberapa
cara untuk memproses data untuk beberapa aplikasi.
Model konseptual tidak tergantung pada aplikasi
individual, DBMS digunakan, Hardware komputer
dan model fisiknya.
44
Pada perancangan model konseptual basis data ini
penekanan dilakukan pada struktur data dan relasi
antara file.
Pada perancangan model konseptual ini dapat
dilakukan dengan menggunakan model data
relasional.
Teknik Model Data Realsional ada 2 yaitu :
· Teknik Normalisasi
· Teknik Entity Relationship
45
Basis Data Relasional
Basis Data Relasional (Database relasional)
Pada model relasional, basis data akan “disebar”
(dipilah-pilah) kedalam berbagai tabel 2 dimensi.
Setiap tabel terdiri atas lajur mendatar yang disebut
dengan baris data (row / record), dan
lajur vertical yang biasa disebut dengan kolom (columm /
field).
Di setiap pertemuan baris data dan kolom itulah item-
item data (satuan data terkecil) ditempatkan.
46
Ilustrasi Model Data Relasional Sebelum
penerapan basis data dilakukan, lebih dahulu kita
harus mengetahui contoh data yang akan
digunakan.
Contoh data ini harus dianalisis untuk mengetahui
karakteristik mengenai masing-masing tabel data.
Pengetahuan karakteristik dijadikan dasar untuk
penetapan struktur dari masing-masing tabel.
Didalam penerapan basis data, penetapan struktur
table dilakukan sebelum penyimpanan data.
47
Database relasional merupakan jenis Database
Management System (DBMS) yang terbaru, yang
memberikan gambaran atau bagam skema yang
menjelaskan tentang hubungan antar tabel bisa
dilakuan di dalam sebuah database.
Model database ini digagas oleh seorang pakar
database bernama EF codd.
48
Jenis database relasional ini merupakan jenis
database yang paling sederhana disamping jenis
database pendahulunya yaitu database Hierarki
(Hierarchical Database Model), dan database
Jaringan (Network Database Model).
Jenis database relasional menggunakan strukrur
database 2D (dimensi).
49
Database relasional ini, ada penggambaran yang jelas
tentang hubungan suatu tabel dengan tabel yang lain
bisa dilakukan, hubungan ini digambarkan dengan garis
solid yang menghubungkan antara satu field name di
tabel yang satu, dengan satu fieldname di tabel yang lain.
Misalnya fieldname kdpasien di tabel pasien
dengan fieldname kdpasien di tabel diagnosapasien,
yang saling terhubung karena adanaya kesamaan dalam
fungsi dan entitas dari objek yang dimaksud.
Dengan demikian, sebuah database relasional ini
dirancang untuk memiliki keterkaitan antar tabelnya,
menyesuaikan dengan program atau analisa sistem yang
dirancang.
50
Secara umum ada 3 jenis database relasional yaitu :
1. One to One (1 to 1)
Relasi database model ini terjadi apalabila sebuah data terdapat pada 2 buah
tabel, dan hanya diperbolehkan satu data saja pada masing masing tabel
(unique record), sama halnya seperti primary key, record yang ada pada
model ini tidak boleh ada yang sama.
2. One to Many (1 to n)
Relasi database model ini membolehkan data yang sama pada tabel kedua,
tapi hanya membolehkan data yang bersifat unique (unik) pada tabel
pertama. Jadi pada model tabel kedua boleh memiliki beberapa data yang
sama.
3. Many to many (n to m)
Berbeda dengan kedua model diatas, relasi database model ini
membolehkan beberapa data yang sama baik pada tabel pertama maupun
tabel kedua. Dengan demikian tidak ada unique record di kedua tabel
tersebut.
51
Tujuan model relasional database
Menciptakan konsep database DBMS yang terintegrasi
dan bersifat standalone
Menciptakan DBMS yang konsisten dan menghindari
terjadinya data redundancy (duplikasi data) dengan
menerapkan konsep normalisasi data, dengan tujuan
untuk meningkatkan kemampuan dalam mengambil dan
juga memproses data.
52
Karakteristik Database Relasional
Struktur tabel bersifat Tabular
Satu bahasa pemrograman atau sintaksis yang ada dapat
digunakan untuk semua user
Field dikoneksikan melalui value didalam record tabel
53
Kelebihan Database Relasional
Model tampilan / View Tabular dan Query nya berupa
table
Tidak adanya variabel pointer
Kemampuan operator yang baik
User-friendly
54
Model Database Relasional merupakan kumpulan
konsep terpadu untuk mendeskripsikan data, hubungan
antara data, dan batasan pada data. Model Database
Relasional memiliki tiga komponen: bagian struktural,
bagian manipulatif dan seperangkat aturan integritas.
Database Relasional memiliki Terminologi sebagai
berikut:
· Relasi: tabel dengan kolom dan baris.
· Atribut: nama kolom dari suatu relasi.
· Domain: sekumpulan nilai yang diijinkan untuk satu atau
lebih atribut.
· Tuple atau Record: kumpulan isi elemen data dari suatu
relasi yang saling berhubungan .
55
Properti dari suatu Relasi/Tabel adalah :
· Nama tabel berbeda dari semua nama tabel lain dalam
database.
· Setiap sel dari tabel berisi tepat satu nilai atomik
(tunggal).
· Setiap kolom memiliki nama yang berbeda.
· Nilai dari semua kolom dari domain yang sama.
· Setiap record berbeda, tidak ada record yang duplikat.
· Urutan kolom tidak memiliki makna.
· Urutan record secara teoritis tidak memiliki makna.
56
Hubungan antar data dalam database relasional di
identifikasi menggunakan Relational Key. Jenis-jenis
relational key adalah sebagai berikut:
1. Super key
Satu atribut / kumpulan atribut yang secara unik
mengidentifikasi sebuah tuple di dalam relasi
2. Candidate key
Suatu atribut atau satu set minimal atribut yang
mengidentifikasikan secara unik suatu kejadian spesifik dari
entitas. Atribut di dalam relasi yang biasanya mempunyai nilai
unik. Satu set minimal dari atribut menyatakan secara tak
langsung dimana kita tidak dapat membuang beberapa atribut
dalam set tanpa merusak kepemilikan yang unik.
57
3. Primary key
Merupakan satu atribut atau satu set minimal atribut yang tidak hanya
mengidentifikasikan secara unik suatu kejadian spesifik, tapi juga dapat
mewakili setiap kejadian dari suatu entitas. Candidate key yang dipilih
untuk mengidentifikasikan tuple secara unik dalam relasi. Setiap kunci
candidate key punya peluang menjadi primary key, tetapi sebaiknya
dipilih satu saja yang dapat mewakili secara menyeluruh terhadap entitas
yang ada.
4. Alternate key
Merupakan candidate key yang tidak dipakai sebagai primary key atau
Candidate key yang tidak dipilih sebagai primary key.
5. Foreign key (Kunci Tamu)
Atribut dengan domain yang sama yang menjadi kunci utama pada
sebuah relasi tetapi pada relasi lain atribut tersebut hanya sebagai atribut
biasa. Kunci tamu ditempatkan pada entitas anak dan sama dengan
primary key induk direlasikan.
58
Database Relasional menggunakan bahasa query. Bahasa Query
pernyataan yang diajukan untuk mengambil informasi. Bahasa
Query (Query Language) lebih ditekankan pada aspek pencarian
data dari dalam tabel.
Aspek pencarian ini sedemikian penting karena merupakan inti dari
upaya untuk pengelolaan data. Bahasa Query utama adalah
Stuctured Query Language (SQL)
Karakteristik utama dari SQL adalah :
1. Relatif mudah untuk dipelajari
2. Non-prosedural – fokusnya adalah menentukan informasi apa yang
dibutuhkan, bukan bagaimana mendapatkannya;
3. Bebas-format;
4. Terdiri dari kata-kata bahasa Inggris standar seperti SELECT,
INSERT, dan UPDATE;
5. Dapat digunakan oleh berbagai pengguna Database.
59
Database relational terdiri dari satu atau lebih tabel yang
tabel-tabel itu sendiri terdiri dari kolom-kolom dan baris-
baris, seperti sebuah spreadsheet. Kolom-kolom pada
tabel itu sendiri terdiri dari bagian-bagian yang
mencerminkan tabel tersebut, bagian-bagian tersebut di
sebut sebagai field., sedangkan kumpulan data-data yang
tercantum dalam kolom-kolom tersebut akan
membentuk sebuah record. Didalam sebuah database
relational akan terdapat satu atau lebih field yang akan
menjadi kunci utama untuk tabel itu, kunci utama itu
biasa disebut sebagai Key, key itu sendiri bisa berupa
Primary atau Foreign Key.(lebih jelasnya di Mata Kuliah
Sistem Basis Data)
60
Database Relasional mencantumkan aturan-aturan
dalam menyimpan data kedalam tabel, yaitu :
1. tidak dimungkinkan adanya sebuah data atau Key yang
sama yang nantinya akan menyebabkan timbulnya duplicate
data untuk sebuah record.
2. replicate(berulang) data juga sangat dihindari.
Tabel-tabel yang terbentuk yang terdiri dari key-key
yang ada dapat saling berhubungan dengan membentuk
sebuah relationship atau hubungan antar tabel, sehingga
keterkaitan antar tabel dapat terlihat.
Database relational sebenarnya dibuat untuk
menghindari penyimpangan-penyimpangan dalam
aturan-aturan menyimpan data ke dalam sebuah
database.
61
Jenis-Jenis Model Data lainnya
1) Object Based Data Model (OBDM)
2) Record Based Data Model (RBDM)
3) Physical Based Data Model (PBDM)
4) Conceptual Based Data Model (CBDM)
62
1) OBJECT BASED DATA MODEL
Model data berbasis objek menggunakan konsep entitas,
atribut dan hubungan antar entitas.
Terdiri dari :
o Entity Relationship model
o Binary model
o Semantik data model
2). RECORD BASED DATA MODEL
Model ini berdasarkan pada record untuk menjelaskan kepada
user tentang hubungan logic antar data dalam basis data
63
3.) PHYSICAL BASED DATA MODEL
Digunakan untuk menguraikan data pada internal level
Beberapa model yang umum digunakan :
– Unifying model
– Frame memory
64
Model data konseptual merupakan sebuah model pendekatan
secara konsep sebelum dikonversi menjadi model data fisik
yang telah berkaitan dengan tujuan basis data tertentu.
Pada perancangan model konseptual akan menunjukan entity
dan relasinya berdasarkan proses yang diinginkan oleh
organisasi.
Pendekatan yang dilakukan pada perancangan model
konseptual adalah dengan menggunakan model data
relational.
Skema konseptual atau model data konseptual adalah sebuah peta
konsep dan hubungan mereka yang digunakan pada sebuah
database. Ini menjelaskan semantik dari suatu organisasi dan
merepresentasikan serangkaian pernyataan tentang sesuatu secara
alami. Secara khusus, ia menjelaskan hal-hal penting bagi sebuah
organisasi (entitas), bagaimana untuk mengumpulkan informasi,
dan karakteristiknya (atribut) dan hubungan antara pasangan atau
hal penting (relation).
65
DBMS
DBMS adalah singkatan dari “Database Management
System” yaitu sistem penorganisasian dan sistem
pengolahan Database pada komputer.
DBMS atau database management system ini merupakan
perangkat lunak (software) yang dipakai untuk
membangun basis data yang berbasis komputerisasi.
DBMS (Database Management system) ini juga dapat
membantu dalam memelihara serta pengolahan data
dalam jumlah yang besar, dengan menggunakan
DBMS bertujuan agar tidak dapat menimbulkan
kekacauan dan dapat dipakai oleh user sesuai
dengan kebutuhan.
66
DBMS ialah perantara untuk user dengan basis data,
untuk dapat berinteraksi dengan DBMS dapat
memakai bahasa basis data yang sudah di tentukan
oleh perusahaan DBMS.
Bahasa basis data umumnya terdiri dari berbagai
macam instruksi yang diformulasikan sehingga
instruksi tersebut dapat di proses oleh DBMS.
Perintah atau instruksi tersebut umumnya
ditentukan oleh user, adapun bahasa yang
digunakan dibagi kedalam 2 (dua) macam
diantaranya DDL (Data Definition Language) dan
DML (Data Manipulation Language)
67
Tujuan DBMS:
Dapat digunakan secara bersama.
Kecepatan serta kemudahan dalam mengakses data.
Efisiensi ruang penyimpanan data.
Untuk menangani data dalam jumlah yang besar atau
banyak.
Untuk menghilangkan duplikasi dan juga inkonsistensi
data.
Untuk keamanan data.
Dan lain-lain.
68
Fungsi dari DBMS adalah:
Mendefinisikan data dan kaitannya
Mengubah data atau memanipulasi data
Keamanan dan interigas data
Recovery/perbaikan dan kurasi data
Data dictionary
Untuk performance kerja
Komponen utama DBMS dapat dibagi menjadi 4
macam : Perangkat Keras, Perangkat
Lunak, Data, Pengguna
69
DBMS biasanya mempunyai komponen fungsional (modul),
diantaranya sebagaimana di bawah ini:
File Manager adalah mengelola ruang didalam suatu disk dan juga
struktur data yang digunakan untuk merepresentasikan informasi
yang tersimpan didalam suatu disk.
Database Manager adalah menyediakan interface antar data low –
level yang terdapat pada basis data dengan program aplikasi serta
query yang diberikan ke suatu sistem.
Query Processor adalah menterjemahkan perintah dalam bahasa
query ke instruksi low – level yang dapat dimengerti database
manager.
DML Precompiler adalah mengkonversi pernyataan atau perintah
DML, yang ditambahkan dalam suatu program aplikasi
kepemangin prosedur normal dalam bahasa induk.
DDL Compiler adalah yang mengkonversi berbagai perintah DDL
ke dalam sekumpulan tabel yang mengandung meta data.
70
Pengunaan DMBS untuk mengelola data mempunyai
beberapa keuntungan,yaitu :
- Kebebasan data dan akses yang efisien
- Mereduksi waktu pengembangan aplikasi
- Integritas dan keamanan data
- Administrasi keseragaman data
- Akses bersamaan dan perbaikan dari terjadinya crashes
(tabrakan dari proses serentak).
- Mengurangi data redundancy : Data redundansi dapat
direduksi/dikurangi, tetapi tidak dapat dihilangkan sama
sekali (untuk kepentingan keyfield)
- Membutuhkan sedikit memory untuk penyimpanan data.
71
Keuntungan DBMS adalah:
Mengontrol pengulangan data
Data yang konsisten
Bisa mendapatkan informasi yang lebih banyak dan jumlah data yang sama
Pemakaian data secara bersama-sama
Meningkatkan integritas data
Meningkatkan keamanan
Penetapan standarisasi
Perbandingan skala ekonomi
Menyeimbangi konflik kebutuhan
Meningkatkan akses dan resporn dari data
Meningkatkan produktifitas
Meningkatkan pemeliharaan data melalui data independen
Meningkatkan konkurensi
Meningkatkan layanan backup dan recovery
72
Kerugian DBMS adalah:
Kompleksitas
Biaya DBMS yang beragam tergantung pada lingkungan dan
fungsi yang disediakan
Ukuran yang besar karena kompleksitas yang terjadi, Perlu
mengetahui konfigurasi perangkat keras yang besar
Tambahan biaya untuk hardware
Biaya konversi yang diperlukan untuk pemakaian DBMS yang
baru
Performa kinerja menurun
Tingkat kegagalan yang lebih besar
Perlu mempekerjakan dan mempertahankan staf DBA DBMS
memerlukan pengetahuan khusus agar dapat memanfaatkan
kemampuan secara penuh
73
Contoh DBMS (Database Management System)
Database Hierarchy: Akses data harus mengikuti aturan hirarki
yang sudah didefinisikan terlebih dahulu.
Contoh: IMS-2 (Information Management System) oleh IBM, 1968
Data Network: Data membentuk jaringan yang lebih bebas dari
model Hierarchy.
Contoh: IDMS (Integrated Database Management System) oleh Cullinet
Software, 1972
Data Relational: Data dikelompokkan secara bebas menurut jenis
lewat proses normalisasi. Contoh:
INGRE oleh UN of CA & Relational Tech. 1973,
System-R oleh IBM Research, 1975,
ORACLE oleh Relational Software Inc, 1979,
DBASE II oleh Ashton-Tate, 1981.
74
Macam-Macam atau Jenis-Jenis DBMS (Database
Management System)
MySQL
ORACLE
FIREBIRD
Microsoft SQL Server
Visual Foxpro
dll
75
Macam-macam atau contoh DBMS
(Database management system)
Adapun beberapa contoh dari DBMS, diantaranya seperti
di bawah ini:
1. MySQL
Kelebihannya:
Free/gratis.
Selalu stabil dan cukup tangguh.
Keamanan yang cukup baik.
Sangat mendukung transaksi, dan dukungan dari banyak
komunitas.
Sangat fleksisbel dengan barbagai macam program.
Perkembangan yang cepat.
76
Kekurangannya:
Kurang mendukung koneksi bahasa pemerograman
misalnya seperti Visual Basic (VB), Foxpro, Delphi sebab
koneksi ini dapat menyebabkan field yang dibaca harus
sesuai dengan koneksi bari bahasa pemerograman visual
tersebut.
Data yang dapat ditangani belum besar dan belum
mendukung widowing Function.
77
2. Oracle
Kelebihannya:
Terdapat beragan fitur yang bisa memenuhi tuntutan
fleksibilitas dari organisasi atau perusahaan yang besar.
Bisa mendayaggunakan lebih dari satu server dan
penyimpanan data dengan cukup mudah.
Performa pemrosesan transaksi yang sangat tinggi.
Kekurangannya:
Pemakaiannya membutuhkan dana atau biaya karena
mahal dan diperlukan DBA yang cukup handal sebab
DBMS ini cukup rumit.
78
3. Microsoft SQL server
Kelebihannya:
DBMS ini sangat cocok untuk perusahaan mikro, menengah
hingga perusahaan besar karena mampu mengelola data yang
besar.
Mempunyai kelebihan untuk men-manage user serta tiap user-
nya dapat diatur hak aksesnya terhadap pengaksesan database
oleh DBA.
Tingkat pengamanan datanya sangat baik.
Dapat melakukan atau memiliki back-up, recovery, dan rollback
data.
Kelebihan lainnya mempunyai kemampuan membuat database
mirroring dan juga culustering.
79
Kekurangannya:
Hanya bisa berjalan pada platform OS (Operasi system)
Microsoft windows.
Perangkat lunak (software) ini berilisensi dan tentunya
pemakaiannya membutuhkan biaya yang tergolong
cukup mahal.
4. dan lainnya
80