POKOK BAHASAN 1
BASIS DATA, MODEL DATA, DIAGRAM E-R
A. Konsep
Sistem Basis Data
Basis data adalah kumpulan data yang disimpan secara sistematis
di dalam komputer dan dapat diolah atau dimanipulasi serta dapat diakses dengan
mudah dan tepat menggunakan perangkat lunak (program aplikasi) untuk
menghasilkan sebuah informasi.
Komponen Sistem Basis Data: Perangkat Keras (Hardware), Sistem
Operasi (Operating System), basis data (Database), DBMS (Database Management
System), Pemakai (User).
B. Konsep
Model Data
Model data merupakan suatu cara untuk menjelaskan tentang
data-data yang tersimpan dalam basis data dan bagaimana hubungan
antar data tersebut untuk para pengguna (user) secara logika. Secara
garis besar model data dapat dikelompokkan menjadi 3 macam yaitu :
- Model
Data Berbasis Objek (Object based data model)
- Model
Data berbasis Record (Record Based Data Model)
- Physical
Based Data Model
C. Bahasa Basis Data
Bahasa yang digunakan untuk mendefinisikan, mengelolah dan
memanipulasi basis data dikelompokkan 3 macam yaitu :
1. DDL (Data
Definition Language) digunakan untuk mendefinisikan struktur dan kerangka
dari basis data yang meliputi :
Membentuk basis
data, tabel, indeks.
Mengubah
struktur table.
Menghapus basis
data, tabel atau indeks.
2. DML
(Data Manipulation Language) digunakan untuk menjabarkan pemrosesan data
pada basis data yang meliputi :
Menambahkan
atau menyisipkan data baru ke basis data
Mengelolah data
yang tersimpan dalam basis data (query)
Mengubah dan
menghapus data dalam basis data.
3. DCL (Data
Control Language) digunakan untuk pengaturan hak akses pengguna pada
basis data yang meliputi :
Menugaskan hak
akses terhadap basis data kepada pengguna atau grup pengguna.
Membatalkan hak
akses pengguna terhadap basis data.
D. Entity
Relationship Diagram (ER-D)
ER_D Merupakan model data yang dikembangkan berdasarkan obyek
atau entitas. ER_D berguna membantu perancang atau analis sistem pada saat
melakukan analisis dan perancangan basis data karena model ini dapat
menunjukkan macam data yang dibutuhkan dan direlasikan antar data di dalamnya.
1. Komponen
ER_Diagram
Sebuah diagram ER tersusun atas tiga komponen, yaitu entitas
yang merupakan obyek dasar yang terlibat dalam sistem, atribut yang berperan
sebagai penjelas entitas, kerelasian antar entitas menunjukkan hubungan yang
terjadi diantara dua entitas.
2. Langkah-langkah
Membuat ER_Diagram
Untuk membuat ER_Diagram secara lengkap dapat dilakukan dengan
mengikuti langkah-langkah sebagai berikut :
- Identifikasikan
setiap entitas yang terlibat.
- Lengkapi
masing-masing entitas dengan atribut yang sesuai.
- Tentukan
primary key dari masing-masing entitas.
-
Identifikasikan setiap kerelasian berikut jenisnya yag terjadi di
antara entitas dengan membuat tabel daftar kerelasian antar
entitas.
-
Gambarkan simbol-simbol entitas, atribut, dan kerelasian antar
entitas secara jelas dan tidak bertabrakan.
- Cek
ER_Diagram yang terbenuk, dalam hal : kelengkapan entitas, kelengkapan
atribut, kelengkapan kerelasian antar entitas dan jenis kerelasian antar
entitas.
POKOK BAHASAN 2
STRUKTURED QUERY LANGUAGE (SQL)
A. SQL
(Structured Query Language)
SQL
merupakan suatu bahasa (language) standar menurut ANSI (American National
Standards Institute) yang digunakan untuk mengakses basis data. SQL pertama
kali diterapkan pada sistem R (sebuah proyek riset pada laboratorium riset San
Jose, IBM). Kini SQL juga dijumpai pada berbagai platform, dari mikrokomputer
hingga mainframe. SQL dapat digunakan baik secara berdiri sendiri maupun
dilekatkan pada bahasa-bahasa lain seperti C dan Delphi. SQL juga telah menjadi
bagian dari sejumlah DBMS, seperti Oracle, Sybase, MySQL dan Informix.
B. Elemen
SQL
1. Pernyataan
Merupakan perintah SQL yang meminta sesuatu tindakan kepada DBMS (Database
Management System). Yang semuanya dikelompokkan berdasarkan fungsinya
masing-masing yaitu :
Data Definition
Language (DDL) : Digunakan untuk mendefinisikan data dengan menggunakan
perintah : CREATE, DROP, ALTER.
Data
Manipulation Language (DML) : Digunakan untuk memanipulasi data dengan
menggunakan perintah : INSERT, SELECT, UPDATE, DELETE.
Data
Control Language (DCL) : Digunakan untuk mengontrol hak para pemakai data
dengan perintah : GRANT, REVOKE.
2. Nama
Nama
digunakan sebagai identitas bagi objek-objek pada DBMS (Database Management
System). Contoh objek pada DBMS adalah tabel, kolom dan pengguna.
3. Tipe
Data
4.
Konstanta
Konstanta menyatakan nilai yang tetap atau tidak berubah. Konstanta
sering di pakai pada perintah SELECT. Konstanta di bagi menjadi 2 :
Konstanta
bertipe numerik : 200, -3, 1500, 3.25
Konstanta
bertipe karakter : ‘Teknik Informatika’
5. Operator
Aritmatika
Operator
Aritmatika adalah ekspresi untuk memperoleh suatu nilai dari hasil perhitungan.
Contoh :
harga*jumlah+2
6. Operator
Relasi
Merupakan operator yang digunakan untuk membandingkan suatu nilai dengan nilai
yang lain.
7. Operator
Logika
Operator logika ada 3 yaitu OR, AND dan NOT.
8. Operator
Pembanding
9. Aggregate
Functions (Fungsi Agregat)
Fungsi adalah sebuah subprogram yang menghasilkan suatu nilai jika
dipanggil.
POKOK BAHASAN 3
DATA DEFINITION LANGUAGE (DDL)
A. Data
Definiton Language (DDL)
DDL merupakan bagian dari sql yang digunakan untuk
mendefinisikan struktur dan kerangka data dan obyek basis data. Bisa
juga dikatakan merupakan kelompok perintah yang berfungsi untuk mendefinisikan
atribut-atribut basis data, tabel, batasan-batasan terhadap suatu atribut,
serta hubungan antar tabel.
1. Membuat
Database
Contoh Syntax
: mysql> create database perpustakaan;
2. Menampilkan
daftar Database
Contoh Syntax
: mysql> show databases;
3. Menghapus
Database
Contoh Syntax
: Mysql> drop database perpustakaan;
4. Mengaktifkan
Database
Contoh Syntax
: Mysql> use perpustakaan;
5. Membuat
Tabel
Contoh Syntax
: mysql> create table pengarang (id_pengarang varchar(5),
nama_pengarang varchar(35));
6. Mendefinisikan
null/not null
Contoh Syntax
: mysql> create table pengarangg (
id_pengarang
varchar(5) not null,
nama_pengarang
varchar(35) not null);
7. Mendefinisikan
Nilai Bawaan (Default)
Contoh Syntax
: Mysql> create table buku (
Id_buku varchar(5) not
null,
Judul_buku varchar(15)
not null,
harga integer default
0,
tahun_terbit
varchar(5),
id_pengarang
varchar(5),
id_penerbit
varchar(5));
8. Menentukan
kunci primer (Primary Key) Pada Tabel
Contoh Syntax
: Mysql> create table pengarang (
Id_pengarang
varchar(5) not null primary key,
Nama_pengarang
varchar(15) not null);
9. Menghapus
Primary Key Pada Tabel
Contoh Syntax
: Mysql> alter table pengarang drop primary key;
10. Menentukan
Foreign Key Pada Tabel
Contoh Syntax
: mysql> alter table buku add constraint fk foreign key (id_pengarang)
references pengarang (id_pengarang) on update cascade on delete no action;
11. Menghapus
Foreign Key
Contoh Syntax
: Mysql> alter table buku drop foreign key fk;
12. Mengubah
Struktur Tabel
Contoh Syntax
: Mysql> alter table buku add keterangan varchar(25);
13. Menghapus
Tabel
Contoh Syntax
: Mysql> drop table buku;
POKOK BAHASAN 4
DATA MANIPULATION LANGUAGE (DML)
A. Data
Manipulation Language (DML)
Data manipulation language (DML) merupakan perintah-perintah
yang berfungsi untuk melakukan manipulasi data ataupun objek-objek yang ada
didalam tabel. DML menurut jenisnya dapat dibagi menjadi 2 jenis yaitu :
1. Prosedural,
DML membutuhkan pemakai untuk menspesifikasikan data apa yang dibutuhkan dan
bagaimana cara mendapatkannya, contoh paket bahasa prosedural adalah dBase III,
FoxBase.
2. Non
prosedural, DML membutuhkan pemakai untuk menspesifikasikan data apa yang
dibutuhkan tanpa tahu bagaimana cara mendapatkannya. Contoh paket bahasa non
prosedural adalah SQL (Structured Query Language) atau Query By Example (QBE).
B. Perintah
DML
1. INSERT
Contoh Syntax
: Mysql > insert into buku values (‘B001’,’Sistem
BasisData’,25000,’2004’,’P001’,’T001’);
2. UPDATE
Perintah UPDATE
digunakan untuk mengubah isi data pada satu atau beberapa kolom pada suatu
tabel.
Contoh Syntax
: Mysql > update buku set judul_buku=’basis data terpadu’ where id_buku=’B001’;
3. SELECT
Perintah SELECT
digunakan untuk menampilkan isi dari suatu tabel
yang dapat dihubungkan
dengan tabel yang lainnya.
Contoh Syntax
: Mysql > select * from buku;
4. DELETE
Perintah delete
digunakan untuk menghapus satu baris,baris dengan kondisi tertentu atau seluruh
baris.
Contoh Syntax
: Mysql > delete from buku where judul_pengarang=’basis data’;
POKOK BAHASAN 5
QUERY DAN VIEW
A.
Query
Query merupakan suatu proses pengolahan data yang digunakan
untuk memberikan hasil dari basis data berdasarkan kriteria tertentu. Query
tidak hanya membaca atau mengambil data,Query biasanya melibatkan beberapa
tabel yang direlasikan dengan menggunakan field kunci.Namun query juga dapat
digunakan pada satu tabel saja,tetapi hasilnya kurang informatif dan terbatas.
1. Aturan
dalam melakukan query antar tabel
Setiap field
disebutkan bersama dengan nama tabelnya,dipisahkan tanda titik (.)
2. Jenis
– jenis join pada query.
a. Operator
Cross Join
Operator ini berguna
untuk melakukan operasi penggabungan dengan perkalia kartesain.Namun
penggabungan jenis ini jarang digunakan karena tidak menghasilkan nilai
informasi yang efektif.
select * from buku
cross join pengarang limit 5;
b. Operator
Inner Join
Inner join digunakan
untuk menampilkan data dari dua tabel yang berisi data sesuai dengan syarat
dibelakang on (tidak boleh null) dengan kata lain semua data dari tabel kiri
mendapat pasangan data dari tabel sebalah kanan.
Mysql> select *
from pengarang join buku on (pengarang.id_pengarang=buku.id_pengarang);
c. Operator
Equijoin
Equijoin adalah
penggabungan antar tabel denga menggunakan operator ‘=’ pada kondisi klausa
Where.
SELECT buku.id_buku,
buku.judul_buku, pengarang.id_pengarang, pengarang.nama_pengarang From buku,
pengarang WHERE buku.id_pengarang=pengarang.id_pengarang;
d. Operator
Self-join
Self-join adalah jenis
penggabungan antar field dari tabel yang sama. Untuk melakukan penggabungan
self join menggunakan alias.
SELECT a.id_buku,
b.judul_buku from buku a, buku b WHERE a.harga=’25000’ AND a.harga=’25000’;
e. Operetor
Natural Join ( Left & Right )
Operator ini digunakan
untuk melakukan equijoin dengan memperlakukan nama-nama kolom yang sama sebagai
kolom penghubung.
SELECT buku.id_buku,
buku.judul_buku, pengarang.id_pengarang, pengarang.nama_pengarang FROM buku
NATURAL JOIN pengarang;
3. UNION,
INTERSECT dan EXCEPT
a. UNION
Union merupakan
operator yang digunakan untuk menggabungkan hasil query,dengan ketentuan
jumlah,nama dan tipe kolom dari masing-masing tabel yang akan ditampilkan
datanya harus sama.
b. INTERSECT
Intersect merupakan
operator yang digunakan untuk memperoleh data dari dua buah query
dimana data yang ditampilkan adalah yang memenuhi kedua query tersebut dengan
ketentuan jumlah,nama dan tipe kolom dari masing-masing tabel yang akan
ditampilkan datanya harus sama.
c. EXCEPT
/ Set Difference
Except merupakan
operator yang digunakan untuk memperoleh data dari dua buah query dimana data
yang ditampilkan adalah data yang ada pada hasil query 1 dan tidak terdapat
pada data dari hasil query 2 dengan ketentuan jumlah,nama dan tipe kolom dari
masing-masing tabel yang akan ditampilkan datanya harus sama.
d. Nested
Queries / Subquery (IN,NOT IN,EXISTS,NOT EXIST)
Subquery berarti query didalam
query dengan menggunakan subquery, hasil dari query akan menjadi
bagian dari query diatasnya.
B. View
View adalah perintah
query yang disimpan pada database dengan suatu nama tertentu,sehingga bisa
digunakan setiap saat untuk melihat data tanpa menuliskan ulang query tersebut.
C. Penggunaan
View
1. View
antar 2 tabel
Kita akan membuat view
dari relasi antara tabel “buku” dan “penerbit” untuk menampilkan data buku dan
penerbitnya dari database PERPUSTAKAAN dengan nama ‘view_buku”
perintahnya adalah sebagi berikut :
Mysql > CREATE VIEW
view_buku
>As
>SELECT a.id_buku,
a.judul_buku,
>a.tahun_terbit,b.nama_penerbit
>FROM
>buku a JOIN
penerbit b ON a,buku= b.penerbit;
2. View
dengan 3 tabel
Membuat view dari
relasi antara tabel “buku”, ”anggota” dan “peminjaman” untuk menampilkan data
peminjaman buku dari database perpustakaan dengan nama “view_peminjaman”.
perintahnya adalah sebagai berikut :
Mysql >CREATE VIEW
view_peminjaman
>AS
>SELECT a id_pinjam,
b.id_buku, b.judul_buku,
>c.id_anggota,
c.nama_anggota, a.tgl_pinjam,
>a.tgl_kembali FROM
peminjaman a, buku b,
>anggota
c WHERE a.id_buku= b.id_buku AND
>a.id_anggota=c.id_anggota;
POKOK BAHASAN 6
DATA CONTROL LANGUAGE (DCL) / HAK AKSES USER
A. Pemahaman
Hak Akses
Basis data yang telah dibuat perlu diatur agar data selalu dalam
keadaan aman dari pemakai yang tidak berhak. Pengaturan hak akses berguna dalam
hal pembatasan pengaksesan suatu data, misalkan hanya pemakai tertentu yang
bisa membaca atau pemakai lain yang justru dapat melakukan perubahan dan
penghapusan data.
Macam-macam perintah
yang terkait dengan hak akses adalah SELECT, INSERT, UPDATE, DELETE,
REFERENCES, INDEX, CREATE, ALTER dan DROP.
B. Mengatur
Hak Akses
a. Perintah
GRANT
Dipergunakan untuk
membuat user baru dengan izin aksesnya.
Contoh Syntax
: GRANT SELECT ON buku To ‘siska’@’localhost’;
b. Hak
akses lebih dari satu.
Contoh Syntax
: GRANT SELECT, INSERT, UPDATE, DELETE, ON buku TO
‘siska’@’localhost’ ;
C. Membatasi
Hak Akses
Hak akses perlu
dibatasi untuk memudahkan dalam mengatur dan mengawasi pemakaian data serta
menjaga keamanan data.
Contoh Syntax
: GRANT SELECT, UPDATE (id_buku,judul_buku,tahun_terbit) On buku TO
‘edi’@’localhost’ ;
D. Hak
akses penuh
Untuk memberikan hak
akses penuh kepada pemakai, dapat memakai perintah klausa ALLPRIVILEGES.
Tentunya dengan pemberian hak akses penuh kepada pemakai (user).
Contoh Syntax
: GRANT ALL PRIVILAGE ON buku to siska;
E. Hak
akses kepada public
Untuk memberikan hak
aksess kepada banyak user dapat menggunakan klausa PUBLIC beberapa DBMS ada
yang menggunakan klausa WORLD.
Contoh Syntax
: GRANT SELECT, INSERT ON buku to public;
F. Pencabutan
hak akses
a. Pencabutan
hak akses sementara
Untuk melakukan
pencabutan atau penghapusan hak akses user menggunakan perintah REVOKE perintah
ini juga mampu melakukan pencabutan hak akses sebagian pemakai atau secara
keseluruhan.
Contoh Syntax
: REVOKE SELECT ON buku FROM ‘siska’@’localhost’;
b. Perintah
DELETE
Untuk menghapus user
secara permanen dari basis data.
Sekian rangkuman
Praktikum Basis Data dari saya, Semoga dapat bermanfaat bagi kita semua, dan
apabila ada kesalahan dalam kata mohon maaf sebesar - besarnya .
Wassalamualaikum wr.wb
Comments
Post a Comment