Makalah Kelompok 6-Ddl&Dcl
Makalah Kelompok 6-Ddl&Dcl
DosenPengampu:
Syukhri S.T., M.CIO
Disusun Oleh
Kelompok 6 :
INFORMATIKA (NK)
DEPARTEMEN TEKNIK ELEKTRONIKA
FAKULTAS TEKNIK
UNIVERSITAS NEGERI PADANG
2022
1
KATA PENGANTAR
Assalamu’alaikum Wr.Wb
Dengan mengucapkan puji syukur kehadirat Tuhan Yang Maha Esa, atas
segala kebesaran dan kelimpahan nikmat yang diberikan-Nya, sehingga penyusun
dapat menyelesaikan Makalah Data Definition Language dan Data Control
Language
Dalam penulisan makalah ini, berbagai hambatan telah kami alami. Oleh
karena itu, terselesaikannya makalah ini tentu saja bukan karena kemampuan
penyusun semata-mata. Namun, karena adanya bantuan dan dukungan dari pihak-
pihak yang terkait.
Dalam penyusunan makalah ini, penyusun menyadari pengalaman dan
pengetahuan masih sangat terbatas. Oleh karena itu, penyusun sangat
mengharapkan adanya kritik dan saran dari berbagai pihak agar makalah ini lebih
baik dan bisa lebih bermanfaat.
Kelompok 6
2
DAFTAR ISI
Table of Contents
KATA PENGANTAR.......................................................................................................2
DAFTAR ISI......................................................................................................................3
BAB I.................................................................................................................................4
PENDAHULUAN.............................................................................................................4
1.1 Latar Belakang....................................................................................................4
1.2 Rumusan Masalah..............................................................................................5
1.3 Tujuan Penulisan................................................................................................5
BAB II...............................................................................................................................6
PEMBAHASAN................................................................................................................6
2.1 Data Definition Language.........................................................................................6
2.2 Data Control Language.............................................................................................6
2.3 Perintah yang terdapat di dalam DDL.......................................................................7
2.3.1 Fungsi Utama DDL.............................................................................................................7
2.3.2 Macam-macam Perintah DDL............................................................................................7
2.3.3 Contoh kasus pada DDL.....................................................................................................9
2.4 Perintah yang terdapat di dalam DCL.....................................................................11
GRANT.............................................................................................................................11
REVOKE...........................................................................................................................14
2.4.1 Contoh Kasus Pada DCL...................................................................................................15
2.5 Perbedaan Antara DDL dan DCL.............................................................................16
DDL................................................................................................................................16
DCL................................................................................................................................16
BAB III............................................................................................................................17
PENUTUP.......................................................................................................................17
3.1 Kesimpulan.............................................................................................................17
3.2 Saran......................................................................................................................17
DAFTAR PUSTAKA......................................................................................................18
3
BAB I
PENDAHULUAN
1.1 Latar Belakang
Kebutuhan penunjang pekerjaan manusia semakin meningkat. Banyaknya
pekerjaan-pekerjaan yang menuntut manusia untuk bekerja secara cepat, tepat,
dan akurat. Karena kesulitan tersebut membuat manusia berfikir untuk membuat
suatu aplikasi yang dapat mempermudah pekerjaan tersebut. Contohnya dalam hal
penjualan, yang membutuhkan begitu banyak table yang berfungsi untuk
menyusun semua hal penjualan dengan susunan yang tepat. Yaitu dalam membuat
tabel wilayah, tabel barang, tabel pelanggan, dan tabel jual.
4
1.2 Rumusan Masalah
Adapun rumusan masalah dalam makalah yaitu :
Apa Itu Data Definition Language ( DDL )
Apa Itu Data Control Language ( DCL )
Apa saja yang termasuk ke dalam perintah DDL
Apa saja yang termasuk ke dalam perintah DCL
Perbedaan DDL dan DCL
5
BAB II
PEMBAHASAN
SQL-92 juga memperkenalkan bahasa manipulasi skema dan tabel informasi skema ke skema
permintaan. Tabel informasi ini ditetapkan sebagai SQL/Schemata dalam SQL:2003. Istilah
DDL juga digunakan dalam arti umum untuk merujuk ke bahasa formal apa saja untuk
menggambarkan struktur data atau informasi.
DDL merupakan bagian dari SQL. SQL seringkali menggunakan kata kerja imperatif
dengan bahasa Inggris normal seperti kalimat untuk mengimplementasikan modifikasi
database. Oleh karena itu, DDL tidak muncul sebagai bahasa yang berbeda dalam database
SQL, tetapi mendefinisikan perubahan skema database.
6
2.3 Perintah yang terdapat di dalam DDL
Menurut teorikomputer.com DDL (Data Definition Language) merupakan kumpulan
perintah pada SQL untuk menggambarkan desain dari basis data (database).
Perintah-perintah tersebut yaitu :
Create
Rename
Alter
dan Drop
Membuat
Mengubah
dan Menghapus struktur data pada database.
Supaya lebih jelas berikut ini mari kita pahami beberapa perintah dari DLL.
Create
No Perintah Fungsi
7
Contoh Penggunaan :
CREATE DATABASE db_kampus;
CREATE TABLE table_mahasiswa (
column1 datatype,
column2 datatype,
column3 datatype,
....
);
CREATE INDEX index_name
ON table_name (column1, column2, ...);
Rename
No Perintah Fungsi
Contoh Penggunaan :
Alter
No Perintah Fungsi
Contoh Penggunaan :
Perintah tersebut digunakan untuk menambahkan kolom tanggal lahir pada tabel
siswa
8
.
Drop
No Perintah Fungsi
Contoh Penggunaan :
DROP DATABASE kampus;
DROP TABLE data_mahasiswa;
9
Kode Pasien tipe datanya karakter dengan panjang 10 memilki kunci utama (primary key )
serta tidak boleh kosong, Nama Pasien memiliki tipe data karakter dengan panjang 40, Jenis
kelamin memiliki tipe data karakter dengan panjang 10, Usia dengan tipe data bilangan
bulat, Pekerjaan memiliki tipe data karakter dengan panjang 40, KTP memiliki tipe data
karakter dengan panjang 50, Alamat memiliki tipe data karakter dengan panjang 60, telepon
memiliki tipe data karakter dengan panjang 55.;
Tabel Dokter memiliki struktur, sbb:
Kode Dokter tipe datanya karakter dengan panjang 10 memilki kunci utama (primary key )
serta tidak boleh kosong, Nama Dokter memiliki tipe data karakter dengan panjang 40, Jenis
kelamin memiliki tipe data karakter dengan panjang 10, Spesialis memiliki tipe data karakter
dengan panjang 30, Alamat memiliki tipe data karakter dengan panjang 60, Kota memiliki
tipe data karakter dengan panjang 25, telepon memiliki tipe data karakter dengan panjang
30, Email memiliki tipe data karakter dengan panjang 50.;
Tabel Obat memiliki struktur, sbb:
Kode Obat tipe datanya karakter dengan panjang 10 memilki kunci utama (primary key )
serta tidak boleh kosong, Nama Obat memiliki tipe data karakter dengan panjang 40, Jenis
obat memiliki tipe data karakter dengan panjang 40, Kemasan memiliki tipe data karakter
dengan panjang 30, Harga satuan obat memiliki tipe data bilangan pecahan (numeric)
dengan panjang 12, Jumlah obat memiliki tipe bilangan pecahan (numeric) dengan panjang
12.;
Tabel Pegawai memiliki struktur, sbb:
No.Induk Pegawai tipe datanya bilangan bulat (interger auto number) dengan panjang tidak
terbatas memilki kunci utama (primary key ) serta tidak boleh kosong, Nama Pegawai
memiliki tipe data karakter dengan panjang 40, Jenis kelamin memiliki tipe data karakter
dengan panjang 15, Usia dengan tipe data bilangan bulat (integer), Bagian memiliki tipe data
karakter dengan panjang 30, Alamat memiliki tipe data karakter dengan panjang 60, Kota
memiliki tipe data karakter dengan panjang 25, telepon memiliki tipe data karakter dengan
panjang 30, telepon memiliki tipe data karakter dengan panjang 55, Email memiliki tipe data
karakter dengan panjang 50.;
Membuat database: puskesmas_db
create database puskesmas_db;
use puskesmas_db;
Nama-nama untuk Tabel Master memiliki struktur, sbb:
Membuat tabel Pasien:
create table pasien(kode_pas char(10) not null,
nama_pas varchar(40),
jenis_kel char(10),
usia int,
pekerjaan char(30),
ktp varchar(15),
alamat varchar(50),
telepon varchar(30),
Constraint PK_Pasien primary key (kode_pas));
Membuat tabel Dokter:
create table dokter(kode_dok char(10) not null,
10
nama_dok varchar(25),
kelamin char(15),
spesialis varchar(30),
alamat_dok varchar(60),
kota_dok char(25),
telp_dok varchar(30),
email varchar(50),
Constraint PK_dokter primary key (kode_dok));
Membuat tabel Obat:
create table obat(kode_obat char(10) not null,
nama_obat varchar(25),
jenis varchar(40),
kemasan nchar(30),
harga_obat numeric(12),
jumlah_obat numeric(12),
Constraint PK_Obat primary key (kode_obat));
Membuat tabel Pegawai:
create table pegawai(nip int auto_increment,
nama varchar(40),
kelamin varchar(15),
usia int,
bagian varchar(30),
alamat varchar(50),
kota varchar(25),
telepon varchar(55),
email varchar(50),
Constraint PK_Pegawai primary key(nip));
GRANT
REVOKE
GRANT
Sintaks:
GRANT tipe_privilege
11
ON nama_objek
TO nama_pengguna;
Keterangan:
12
mysql -u root
USE mysql
Setelah itu kita akan membuat user baru dengan nama ‘DosenIT‘
dengan password ‘dosenit.com‘. Gunakan perintah di bawah ini:
USE db_kampus;
Setelah berhasil masuk dan menggunakan database db_kampus, cobalah perintah-perintah
yang berhubungan dengan CREATE, INSERT, dan SELECT. Silakan kreasikan sebebas
13
mungkin yang Anda inginkan. Anda juga boleh menggunakan perintah-perintah di bawah ini
untuk bahan uji coba.
REVOKE
14
Sintaks:
REVOKE tipe_privilege
ON nama_objek
FROM nama_pengguna;
tipe_privilege — diisi dengan privilege atau hak akses yang dimaksud (lihat tabel di bagian
atas).
nama_objek — diisi dengan objek-objek database, seperti: database, table, view, trigger,
dan seterusnya.
nama_pengguna — diisi dengan nama pengguna database yang ingin dicabut kembali
hak akses atau privilege-nya.
Untuk contoh penggunaannya, mari kita tarik kembali hak akses SELECT dari user DosenIT.
Setelah mengeksekusi perintah di atas, seharusnya saat ini user DosenIT sudah tidak dapat
menggunakan perintah SELECT. Perhatikan gambar di bawah ini.
Studi Kasus
Anda adalah seorang senior database administrator di perusahaan "A". Suatu hari, perusahaan
tersebut menerima seorang junior database administrator bernama "Budi". Lalu, atasan Anda
meminta untuk memberikan akses ke server database untuk Budi dengan privileges DML
namun tidak dapat menghapus data di database tersebut. Nama database yang dimaksud
adalah hr.
Penyelesaian
Dari studi kasus di atas, kita dapat melakukan administratif database seperti berikut
15
Login sebagai root
Langkah pertama yang harus kita lakukan yaitu login sebagai root mysql.
Perintah yang kita gunakan yaitu
mysql -u root -p
Perintah tersebut artinya adalah kita memanggil perintah mysql diikuti dengan parameter user
dengan disingkat menjadi -u lalu diikuti username, setelah itu diikuti parameter -p yaitu
password. Setelah mengetikkan perintah tersebut di terminal atau cmd, tekan enter.
Kemudian terdapat prompt untuk memasukkan password. Kita masukkan password root kita.
Lalu, tekan enter kembali.
Jika berhasil, maka kita akan masuk ke interface dari mysql.
Membuat user untuk Budi
Selanjutnya, kita buat user baru untuk budi dengan username budi dan password login4j4.
User tersebut bisa login dari semua IP atau host. Perintah yang dapat kita gunakan yaitu
seperti ini
CREATE USER 'budi'@'%' IDENTIFIED BY 'login4j4';
Memberikan hak akses DML
Selanjutnya, kita tinggal memberikan hak akses DML kecuali privileges delete ke user budi
tersebut. Perintah yang dapat kita gunakan yaitu
GRANT SELECT, INSERT, UPDATE ON db_hr.* to 'budi'@'%' ;
Perintah tersebut berarti kita memberikan akses melihat, memasukkan dan memperbarui data
untuk user budi di database db_hr di semua table.
Tekan enter lalu diikuti perintah
GRANT PRIVILEGES;
Sampai di sini tugas kita selesai untuk memberikan akses ke budi sesuai permintaan atasan
kita tadi. Selanjutnya info login user budi dapat kita berikan ke Budi ataupun dapat kita coba
terlebih dahulu dengan login sebagai user budi tersebut.
Jika DDL, maka seperti yang sudah disebutkan sebelumnya, ini adalah sub perintah bahasa
SQL yang mempunyai peran dalam hal membangun kerangka suatu database. Adapun yang
dimaksud ialah tabel dan database itu sendiri. Makanya dalam DDL terdapat 3 perintah yang
sangat penting yaitu Create, Alter dan juga Drop seperti yang sudah dijelaskan sebelumnya.
16
DCL
Sementara untuk DCL atau Data Control Language, ini merupakan sub bahasa SQL yang
mempunyai fungsi utama untuk mengontrol data serta server databasenya. Misalnya hak
akses dan manipulasi user. Dengan kata lain, apabila Anda telah memiliki user kemudian
ingin mengatur hak akses dari masing-masing user tersebut, maka Anda perlu memahami
DCL ini.
Selain fungsi tersebut, DCL juga bisa digunakan untuk mengaudit penggunaan database,
mengalokasikan database serta mendefinisikan space. Dalam DCL ini juga ada beberapa
perintah yaitu Grant, Revoke, Commit dan Roolback.
Grant digunakan untuk memberikan izin pada pengguna atau user untuk bisa
mengakses database
Revoke digunakan untuk membatalkan izin pengguna atau user dalam mengakses
database
Commit digunakan untuk menetapkan penyimpanan dalam database
Roolback digunakan untuk membatalkan penyimpanan dalam database
BAB III
PENUTUP
3.1 Kesimpulan
Dari penjelasan dari makalah ini kita menyimpulkan bahwa Data Definition Language
(DDL), digunakan untuk mendefinisikan, mengubah, serta menghapus basis data dan objek-
objek yang diperlukan dalam basis data, seperti tabel, view, user, dan sebagainya. Data
Definition Language (DDL) digunakan untuk membuat kerangka database yang akan dibuat.
Atau juga merupakan kelompok perintah yang berfungsi untuk mendefinisikan atributatribut
didalam database, table, atribut kolom, batasan-batasan terhadap suatu atribut serta hubungan
antar table.
Data Control Language (DCL) adalah salah satu komponen SQL yang berfungsi untuk
melakukan pegontrolan data. Pengontrolan yang dimaksud di sini meliputi pengontrolan
17
terhadap hak user dan pengontrolan terhadap suatu transaksi, apakah akan disimpan secara
permanen ke dalam database atau akan dibatalkan. Adanya DCL adalah sebagai alat control
keamanan database dan tabel nya.
3.2 Saran
Meskipun penulis menginginkan kesempurnaan dalam penyusunan makalah ini tetapi
kenyataannya masih banyak kekurangan yang perlu penulis perbaiki. Hal ini di karenakan
masih minimnya pengetahuan yang penulis miliki. Silakan bagi para pembaca untuk
mengoreksi dan mengomentari makalah tentang Data Definition Language (DDL), dan Data
Control Language (DCL) yang kami Susun jika ada kesalahan mengenai Materi yang telah
dibuat dalam makalah ini.Oleh karena itu kritik dan saran yang membangun
DAFTAR PUSTAKA
https://daismabali.com/artikel_detail/21/1/Data-Definition-Language-dan-Cara-Query-
DDL-pada-SQL.html
https://qwords.com/blog/ddl-adalah/
https://www.nesabamedia.com/pengertian-ddl/
https://mahasiswa.ung.ac.id/921411144/home/2012/10/3/
pengertian_ddl__dml__dql_dan_dcl.html
https://badoystudio.com/ddl-dan-dml/
https://dosenit.com/sql/data-control-language
https://www.geriatama.com/2021/11/tutorial-mysql-studi-kasus-dan.html
18
https://ibnuis.dev/blog/tutorial-dcl
19