Dedy Rizaldi UMSIDA
Rangkuman Praktikum Basis Data 2
------------------------------------------------------------------------------------------
-----------------------------------------------------------------------------------------------------------------------------------------
BASIS DATA, MODEL DATA, DIAGRAM E-R
1. 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). DBMS (Database Management System) merupakan basis data dan set perangkat lunak (software) untuk pengelolaan basis data
Komponen Sistem Basis Data: Perangkat Keras (Hardware), Sistem Operasi (Operating System), basis data (Database), DBMS (Database Management System), Pemakai (User). DBMS (Database Management System) merupakan basis data dan set perangkat lunak (software) untuk pengelolaan basis data
2. 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
Merupakan himpunan data dan relasi yang menjelaskan
hubungan logik antar data dalam suatu basisdata berdasarkan pada obyek datanya.
Salah satunya adalah Entity Relationship Model.
2. Model Data berbasis Record (Record Based
Data Model
Model ini berdasarkan pada record/rekaman untuk
menjelaskan kepada para pemakai tentang logik antar data dalam basis data.
Salah satunya adalah Relational model.
Physical Based Data Model
Model ini berdasarkan pada teknis penyimpanan record
dalam basis data. Model ini jarang digunakan untuk memodelkan data kepada
pemakai karena kerumitan dan kompleksitasnya yang tinggi
3. 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 :
a. Membentuk
basis data, tabel, indeks.
b. Mengubah
struktur table.
c. Menghapus
basis data, tabel atau indeks.
2. DML (Data
Manipulation Language) digunakan untuk menjabarkan pemrosesan data pada
basis data yang meliputi :
a. Menambahkan
atau menyisipkan data baru ke basis data
b. Mengelolah
data yang tersimpan dalam basis data (query)
c. Mengubah
dan menghapus data dalam basis data.
3. DCL (Data
Control Language) digunakan untuk pengaturan hak akses pengguna pada
basis data yang meliputi :
a. Menugaskan
hak akses terhadap basis data kepada pengguna atau grup pengguna.
b. Membatalkan
hak akses pengguna terhadap basis data.
4. Entity Relationship Diagram (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.
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.
--------------------------------------------------------------------------------------------------
STRUCTURED QUERY LANGUAGE (SQL)
1. 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.
2. Elemen SQL
Elemen dasar SQL mencakup pernyataan, nama, tipe
data, konstanta, ekspresi, operator relasi, operator logika dan fungsi
bawaan.
a. Pernyataan
Merupakan perintah SQL yang meminta sesuatu tindakan
kepada DBMS (Database Management System). SQL memiliki kira-kira 30 pernyataan.
Beberapa pernyataan dasar SQL dapat dilihat pada tabel berikut :
Pernyataan
|
Keterangan
|
CREATE
|
Menciptakan basis data, tabel atau indeks
|
ALTER
|
Mengubah struktur tabel
|
DROP
|
Menghapus basis data, tabel atau indeks
|
COMMIT
|
Mengakhiri sebuah eksekusi transaksi data
|
ROLLBACK
|
Mengembalikan ke keadaan semula sekiranya suatu
transaksi gagal dilaksanakan
|
INSERT
|
Menambahkan sebuah baris pada tabel
|
UPDATE
|
Mengubah nilai pada sebuah baris
|
SELECT
|
Memilih baris dan kolom pada tabel
|
DELETE
|
Menghapus baris pada tabel
|
GRANT
|
Menugaskan hak terhadap basis data kepada pengguna
atau grup pengguna
|
REVOKE
|
Membatalkan hak terhadap basis data
|
b. Nama
Nama digunakan sebagai identitas bagi objek-objek
pada DBMS (Database Management System). Contoh objek pada DBMS adalah tabel,
kolom dan pengguna.
c. Tipe Data
Setiap data memiliki tipe data. Berikut ini adalah
tipe data dalam MySQL :
Tabel 2.2 Tipe data untuk numerik
Tipe
|
Keterangan
|
Range Nilai
|
TINYINT
|
Nilai integer yang sangat kecil
|
Signed : -128 s.d. 127
Unsigned : 0 s.d. 255
|
SMALLINT
|
Nilai integer yang kecil
|
Signed : -32768 s.d. 32767
Unsigned : 0 s.d. 65535
|
MEDIUMINT
|
Integer dengan nilai medium
|
Signed : -8388608 s.d. 8388607
Unsigned : 0 s.d. 16777215
|
INT
|
Integer dengan nilai standar
|
Signed : -2147483648 s.d. 2147483647
Unsigned : 0 s.d. 4294967295
|
BIGINT
|
Integer dengan nilai besar
|
Signed : -9223372036854775808 s.d.
9223372036854775807
Unsigned : 0 s.d. 18446744073709551615
|
FLOAT
|
Bilangan desimal dengan single-precission
|
minimum ± 1.175494351e-38
maksimum ± 3.402823466e+38
|
DOUBLE
|
Bilangan desimal dengan double-precission
|
minimum ± 2.2205738585072014e-308
maksimum ± 1.7976931348623457e+308
|
DECIMAL(M,D)
|
Bilangan float (desimal) yang dinyatakan sebagai
string. M adalah jumlah digit yang disimpan dalam suatu kolom, N adalah
jumlah digit dibelakang koma
|
Tergantung pada nilai M dan D
|
d. Konstanta
Konstanta menyatakan nilai yang tetap atau tidak
berubah. Konstanta sering di pakai pada perintah SELECT. Konstanta di bagi
menjadi 2 :
1. Konstanta bertipe numerik : 200,
-3, 1500, 3.25
2.
Konstanta bertipe karakter : ‘Teknik Informatika’
e. Operator
Aritmatika
Operator Aritmatika adalah ekspresi untuk memperoleh
suatu nilai dari hasil perhitungan.
Contoh : harga*jumlah+2
Simbol-simbol yang dapat digunakan pada ekspresi aritmatika
:
Tabel 2.5 Simbol Ekspresi
Aritmatika
Simbol
|
Keterangan
|
*
|
Perkalian
|
/
|
Pembagian
|
+
|
Penjumlahan
|
-
|
Pengurangan
|
%
|
Sisa pembagian
|
f. Operator
Relasi
Merupakan operator yang digunakan untuk
membandingkan suatu nilai dengan nilai yang lain. Biasanya operator relasi
digunakan bersamaan dengan operator logika dalam membantu untuk menampilkan
informasi dengan kriteria tertentu.Simbol-simbol yang dapat digunakan pada
operator relasi :
Tabel
2.6 Simbol Operator Relasi
Simbol
|
Keterangan
|
=
|
Sama dengan
|
>
|
Lebih besar
|
<
|
Lebih kecil
|
>=
|
Lebih besar atau sama dengan
|
<=
|
Lebih kecil atau sama dengan
|
<>
|
Tidak sama dengan
|
g. Operator
Logika
Operator logika ada 3 yaitu OR, AND dan NOT
Tabel 2.7 Operator Logika
Simbol
|
Keterangan
|
NOT atau !
|
Sebagai negasi atau pembalik nilai
|
OR atau ||
|
Atau
|
AND atau &&
|
Dan
|
h. Operator
Pembanding
Tabel 2.8 Operator Pembanding
Simbol
|
Keterangan
|
IS NOT NULL
|
Apakah sebuah nilai adalah tidak kosong (not null)
|
IS NULL
|
Apakah sebuah nilai adalah kosong (null)
|
BETWEEN
|
Apakah suatu nilai di antara dua batasan nilai
|
IN
|
Apakah suatu nilai berada di dalam pilihan yang
ada
|
NOT IN
|
Apakah suatu nilai tidak berada dalam pilihan yang
ada
|
LIKE
|
Apakah suatu nilai sesuai dengan kriteria tertentu
|
NOT LIKE
|
Apakah suatu nilai tidak sesuai dengan kriteria
tertentu
|
i. Aggregate
Functions (Fungsi Agregat)
Fungsi adalah sebuah subprogram
yang menghasilkan suatu nilai jika dipanggil. Fungsi agregat adalah fungsi
standar di dalam SQL, suatu fungsi yang digunakan untuk melakukan summary,
fungsi statistik standar yang dikenakan pada suatu tabel atau query.
3. MySQL ( My Structured Query Language )
MySQL adalah Relational Database Management System
(RDBMS) yang didistribusikan secara gratis di bawah license GPL (General Public
License). Setiap orang bebas menggunakan MySQL tetapi harus bersifat open
source. MySQL menggunakan bahasa SQL (Structured Query Language).
----------------------------------------------------------------------------------------------
DATA DEFINITION LANGUAGE (DLL)
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.
Perintah
|
Keterangan
|
Create Database
|
Membuat basis data
|
Drop Database
|
Menghapus basis data
|
Create Table
|
Membuat tabel
|
Alter Table
|
Mengubah atau menyisipkan kolom ke dalam tabel
|
Drop Table
|
Menghapus tabel dari basis data
|
Create Index
|
Membuat Index
|
Drop Index
|
Menghapus Index
|
B. Perintah-perintah
DDL
Berikut ini perintah-perintah sql untuk Data
Definiton Language :
a. Membuat
Database
Syntax :
CREATE DATABASE namadatabase;
b. Menampilkan
daftar Database
Untuk menampilkan daftar basis data yang ada di
Mysql dapat menggunakan perintah :
SHOW
DATABASES;
c. Menghapus
Database
Untuk melakukan penghapusan terhadap basis data yang
sudah dibuat.
Syntax :
DROP
DATABASE namadatabase;
d. Mengaktifkan
Database
Sebelum membuat suatu tabel, terlebih dahulu harus
mengaktifkan database yang akan digunakan untuk menyimpan tabel-tabel tersebut
dengan perintah:
USE
namadatabase;
e. Membuat Tabel
Dalam basis data tabel atau field berfungsi untuk
menyimpan record atau data. Untuk membuat table Syntaxnya adalah :
CREATE TABLE namatabel
(
Field1 TipeData1 ([lebar]),
Field2 TipeData2 ([lebar]),
...
Field3 TipeData3 ([lebar])
);
f. Mendefinisikan
null/not null
Ketika membuat tabel, beberapa field harus diatur
agar field tertentu harus diisi. Biasanya field ini adalah sebagai field utama
atau kunci, juga sebagai identikasi sehingga tidak boleh kosong.
Syntax :
CREATE TABLE namatabel
(
Field1 TipeData1 ([lebar]) NOT NULL,
Field2 TipeData2 ([lebar]) NOT NULL,
...
Field3 TipeData3 ([lebar])
);
g. Mendefinisikan
Nilai Bawaan (Default)
Nilai default adalah nilai yang otomatis diberikan
oleh sistem untuk suatu atribut ketika ada penambahan baris baru, sementara
nilai pada atribut tersebut tidak diisi oleh pengguna. Syntax :
CREATE TABLE namatabel
(
Field1 TipeData1 ([lebar]),
Field2 TipeData2 DEFAULT nilai
);
h. Menentukan
kunci primer (Primary Key) Pada Tabel
Key adalah satu gabungan dari beberapa atribut yang
dapat membedakan semua basis data (row) dalam tabel secara unik. Key di dalam
database berfungsi sebagai suatu cara untuk mengidentifikasi dan
menghubungkan satu tabel data dengan tabel yang lain.
Primary Key adalah suatu atribut atau satu set
minimal atribut yang tidak hanya mendefinisikan secara unik suatu kejadian
spesifik tetapi juga dapat mewakili setiap kejadian dari suatu kejadian.
Terdapat tiga cara untuk membuat primary key.
Berikut ini adalah Syntax membuat primary key untuk Field1
Cara 1 :
CREATE TABLE namatabel
(
Field1 TipeData1 ([lebar]) NOT NULL PRIMARY KEY,
Field2 TipeData2 ([lebar])
);
Cara 2 :
CREATE TABLE namatabel
(
Field1 TipeData1 ([lebar]),
Field2 TipeData2 ([lebar]),
PRIMARY KEY(Field1)
);
Cara 3 :
ALTER TABLE namatabel ADD CONSTRAINT namaconstraint
PRIMARY KEY (namakolom);
i. Menghapus
Primary Key Pada Tabel
Perintah :
Cara 1 : Jika primary key dibuat dengan
menggunakan alter table :
ALTER TABLE namatabel DROP CONSTRAINT
namaconstraint;
Cara 2 : Jika primary key dibuat melalui create
table :
ALTER
TABLE namatabel DROP PRIMARY KEY;
j. Menentukan
Foreign Key Pada Tabel
Foreign Key adalah satu set atribut
atau set atribut sebagai key penghubung kedua tabel dan melengkapi satu
relationship (hubungan) terhadap primary key yang menunjukan keinduknya. Jika
sebuah primary key terhubungan ke table/entity lain, maka keberadaan primary
key pada entity tersebut di sebut sebagai foreign key.
k. Menghapus
Foreign Key
Foreign key yang sudah dibuat dapat di hapus dengan
perintah :
ALTER TABLE namatabel DROP FOREIGN KEY
namaconstraint;
l. Mengubah
Struktur Tabel
Tabel yang sudah dibuat dapat
dilakukan perubahan strukturnya seperti penambahan atribut (field), penghapusan
atribut (field) bahkan mengganti lebar field dari tabel tersebut. Perintah yang
digunakan adalah ALTER TABLE.
m. Menghapus
Tabel
Tabel sudah di buat dapat di hapus dengan
menggunakan perintah DROP TABLE. Syntax sebagai berikut:
DROP TABLE namatabel;
--------------------------------------------------------------------------------------------------
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. Antara lain : perintah untuk
memilih data (query),menyisipkan, mengubah dan menghapus data dalam basis data.
Bentuk Manipulasi yang dapat
dilakukan oleh DML diantaranya adalah :
1. Melakukan pencarian
kembali data lama.
2. Penyisipan data baru
kedalam tabel.
3. Penghapusan data.
4. Pengubahan data.
5. Menampilkan data dengan
kriteria tertentu.
6. Menampilkan data secara terurut.
B. Perintah DML sebagai berikut :
A. INSERT
Perintah insert digunakan
untuk menambahkan baris pada suatu tabel.
Terdapat dua cara untuk menambahkan baris, yaitu :
Cara 1 :
Menambahkan baris dengan
mengisi data langsung pada setiap kolom tanpa menyertakan struktur tabel :
INSERT INTO namatabel VALUES
(nilai1,nilai2,nilai-n);
B. UPDATE
Perintah UPDATE digunakan
untuk mengubah isi data pada satu atau beberapa kolom pada suatu tabel.
Syntax :
UPDATE namatabel SET
kolom1 = nilai1, kolom2 = nilai2 [WHERE kondisi];
Perintah dalam tanda [] bersifat opsional untuk
mengubah suatu baris dengan suatu kondisi tertentu. Berikut ini perintah untuk
mengubah baris pada tabel pengarang dengan data sebagai berikut :
Mysql > select * from buku;
C. SELECT
Perintah SELECT digunakan untuk menampilkan isi dari
suatu tabel
yang dapat dihubungkan dengan tabel yang lainnya.
1) Menampilkan data untuk semua
kolom menggunakan asterisk (*)
Syntax : SELECT * FROM namatabel;
2) Menampilkan data untuk kolom
tertentu
Syntax : SELECT kolom1,kolom2,kolom-n From namatabel;
3) Menampilkan data dengan kondisi
data tertentu dengan klausa WHERE
Syntax : SELECT * FROM namatabel WHERE kondisi;
4) Memberikan nama lain pada kolom
Syntax : SELECT namakolomlama AS namakolombaru
FROM namatabel;
5) Menggunakan alias untuk nama
tabel
Syntax : SELECT nmalias.jenis,nmalias.harga
FROM namatabel nama alias;
6) Menampilkan data lebih
dari dua tabel
Syntax : SELECT * from
namatabel1,namatabel2,namatabel-n;
7) Operator comparison ANY dan ALL
a. Operator
ANY digunakan berkaitan dengan subquery. Operator ini menghasilkan TRUE
(benar) jika paling tidak salah satu perbandingan denga hasil subquery
menghasilkan nilai TRUE.
b. Operator ALL
digunakan untuk melakukan perbandingan dengan subquery. kondisi
dengan ALL menghasilkan nilai TRUE (benar) jika subquery tidak
menghasilkan apapun atau jika perbandingan menghasilkan TRUE untuk setiap
nilai query terhadap hasil subquery.
8) Aggregate Functions
(Count,Sum,AVG,Min,Max)
a. Count
Perintah yang digunakan untuk menghitung jumlah
baris suatu kolom pada tabel.
b. Sum
Perintah yang digunakan untuk menghitung jumlah
nilai suatu kolom pada tabel.
c. AVG
Perintah yang digunakan untuk menghitung rata-rata
dari nilai suatu kolom pada tabel.
d. Min
Perintah yang digunakan untuk menampilkan nilai
terkecil dari suatu kolom pada tabel.
e. Max
Perintah yang digunakan untuk menampilkan nilai
terbesar dari suatu kolom pada tabel.
9) SQL dengan Group By dan Having
Klausa Group By digunakan untuk melakukan pengelompokan
data.
10) Order By
Klausa ORDER BY digunakan untuk
mengurutkan data berdasarkan kolom tertentu sesuai dengan tipe data yang
dimiliki.
D. DELETE
Perintah delete digunakan untuk
menghapus satu baris,baris dengan kondisi tertentu atau seluruh baris. Syntax :
DELETE FROM namatabel [where kondisi];
------------------------------------------------------------------------------------------
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 :
a. Setiap field disebutkan bersama dengan
nama tabelnya,dipisahkan tanda titik (.) . Syntax : Namatabel.namafield.
b. Setiap tabel yang terlibat dalam
proses query harus disebutkan dalam klausa FROM,dengan pemisah koma (,) dimana
urutan tabel tidak mempengaruhi proses query.
c. Kondisi dalam klausa Where
mempengaruhi jenis join yang tercipta.
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.
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. Berikut ini perintah untuk
menampilkan data dari tabel pengarang dan buku dengan syarat
berdasarkan kolom kode_pengarang :
c. Operator Equijoin
Equijoin adalah penggabungan antar
tabel denga menggunakan operator ‘=’ pada kondisi klausa Where.
d. Operator Self-join
Self-join adalah jenis penggabungan antar
field dari tabel yang sama. Untuk melakukan penggabungan self join menggunakan
alias.
e. Operetor Natural Join
Operator ini digunakan untuk melakukan
equijoin dengan memperlakukan nama-nama kolom yang sama sebagai kolom
penghubung.
Natural join dibedakan menjadi 2 yaitu
:
· Natural Left
Join
Natural left join digunakan untuk
menampilkan semua data dari tabel sebelah kiri perintah natural left join
beserta pasangannya dari tabel sebelah kanan. Meskipun terdapat data dari
sebelah kiri tidak memiliki pasangan, tetapi akan ditampilkan dengan pasangannya
berupa nilai NULL.
· Natural Right
Join
Natural right join digunakan
untuk menampilkan semua data dari tabel sebelah kanan perintah natural right
join beserta pasangannya dari tabel sebelah kiri.meskipun terdapat data dari
sebelah kanan tidak memiliki pasangan, tetap akan ditampilkan dengan
pasangannya berupa nilai NULL.
3. UNION, INTERSECT dan
EXCEPT
1. 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.
2. 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.
Syntax : SELECT * FROM
namatabel1 INTERSECT SELECT * FROM namatabel2
3. 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.
Syntax : SELECT * FROM namatabel1
EXCEPT SELECT * FROM namatabel2
4. 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. Subquery terletak didalam
klausa WHERE atau HAVING pada klausa WHERE, subquery digunakan untuk
memilih baris-baris tertentu yang kemudian digunakan oleh query. Sedangkan
pada klausa HAVING, subquery digunakan untuk memilih kelompok baris
yang kemudian digunakan oleh query.
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.
Syntax dasar perintah untuk membuat view
adalah sebagai berikut :
CREATE
[OR REPLACE]
VIEW view_name [(column_list)]
AS select_statement
Kita menggunakan opsi OR REPLACE jika
kita ingin mengganti view dengan nama yang sama dengan perintah tersebut. Jika
tidak maka perintah CREATE VIEW akan menghasilkan error jika nama view yang
ingin dibuat sudah ada sebelumnya.
-----------------------------------------------------------------------------------------------------------------------------------------
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
Untuk MySQL versi 3.22 keatas
dalam manajemen user dapat menggunakan perintah GRANT dan REVOKE untuk mengatur
hak akses pemakai (user).
1. Perintah GRANT
Dipergunakan untuk membuat user
baru dengan izin aksesnya.
Bentuk umum :
GRANT jenis_akses
(“nama_kolom) ON nama_database TO nama_user IDENTIFIED BY “nama_password”
[WITH GRANT pilihan akses]
Atau
GRANT hak_akses ON namatabel TO pemakai;
2. Perintah REVOKE
C. Membatasi Hak Akses
Hak akses perlu dibatasi untuk
memudahkan dalam mengatur dan mengawasi pemakaian data serta menjaga keamanan
data.
Contoh :
Administrator akan memberikan hak
akses kepada edi dalam melakukan query tabel buku untuk field tertentu saja.
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).
E. Hak akses kepada public
Untuk memberikan hak aksess
kepada banyak user dapat menggunakan klausa PUBLIC beberapa DBMS ada yang
menggunakan klausa WORLD.
D. Pencabutan hak akses
1. 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.
Bentuk umum :
REVOKE hak_akses ON nama_database FROM nama_user;
Atau
REVOKE hak_akses ON namatabel FROM nama_user;
2. Perintah DELETE
Untuk menghapus user secara permanen dari basis data.
Visit here :
Komentar
Posting Komentar