Saturday, June 13, 2020

Resume Praktikum Basis Data


Perkenalkan nama saya Muhammad Iqbal Al Mulki, salah satu mahasiswa Informatika dari Universitas Muhammadiyah Sidoarjo. Disini Saya akan menyampaikan penjelasan singkat tentang resumen Basis Data yang bersumber dari modul asli UMSIDA. Jika ingin mengenal lebih dalam tentang universitas saya, silahkan akses link berikut : umsida.ac.id atau fst.umsida.ac.id.

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 :
1. Model Data Berbasis Objek (Object based data model)
2. Model Data berbasis Record (Record Based Data Model)
3. 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.

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 (kode_pengarang varchar(5), nama_pengarang varchar(35));
6. Mendefinisikan null/not null
Contoh Syntax :  mysql> create table pengarangg (
kode_pengarang varchar(5) not null,
nama_pengarang varchar(35) not null);
7. Mendefinisikan Nilai Bawaan (Default)
Contoh Syntax :  Mysql> create table buku (
Kode_buku varchar(5) not null,
Judul_buku varchar(15) not null,
harga integer default 0,
tahun_terbit varchar(5),
kode_pengarang varchar(5),
kode_penerbit varchar(5));
8. Menentukan kunci primer (Primary Key) Pada Tabel
Contoh Syntax :  Mysql> create table pengarang (
Kode_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 (kode_pengarang) references pengarang (kode_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 kode_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.kode_pengarang=buku.kode_pengarang);
c. Operator Equijoin
Equijoin adalah penggabungan antar tabel denga menggunakan operator ‘=’ pada kondisi klausa Where.
SELECT buku.kode_buku, buku.judul_buku, pengarang.kode_pengarang, pengarang.nama_pengarang From buku, pengarang WHERE buku.kode_pengarang=pengarang.kode_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.kode_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.kode_buku, buku.judul_buku, pengarang.kode_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.

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.kode_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_peminjaman, b.kode_buku, b.judul_buku,
>c.kode_anggota, c.nama_anggota, a.tanggal_pinjam,
>a.tanggal_kembali FROM peminjaman a, buku b,
>anggota c  WHERE   a.kode_buku= b.kode_buku AND
>a.kode_anggota=c.kode_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 (kode_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


EmoticonEmoticon