Anda di halaman 1dari 16

LE AT IK

BI M
O FOR
MO N
ANN I K
M
A EK
GR –
T

O
R ER
V

EM S
E
T

P EM E
S
MYSQL
Pertemuan 10
TENTANG DATABASE
Tujuan Normalisasi Database
Tujuan normalisasi database adalah untuk menghilangkan dan mengurangi
redudansi data dan tujuan yang kedua adalah memastikan dependensi data (Data
berada pada tabel yang tepat).
Jika data dalam database tersebut belum di normalisasi maka akan terjadi 3
kemungkinan yang akan merugikan sistem secara keseluruhan.

INSERT Anomali : Situasi dimana tidak memungkinkan memasukkan beberapa


jenis data secara langsung di database.
DELETE Anomali: Penghapusan data yang tidak sesuai dengan yang diharapkan,
artinya data yang harusnya tidak terhapus mungkin ikut terhapus.
UPDATE Anomali: Situasi dimana nilai yang diubah menyebabkan inkonsistensi
database, dalam artian data yang diubah tidak sesuai dengan yang
diperintahkan atau yang diinginkan.
NORMALISASI DATABASE
Normalisasi database terdiri dari banyak bentuk, dalam ilmu basis data ada
setidaknya 9 bentuk normalisasi yang ada
yaitu 1NF, 2NF, 3NF, EKNF, BCNF, 4NF, 5NF, DKNF, dan 6NF. Namun dalam
prakteknya dalam dunia industri bentuk normalisasi ini yang paling sering
digunakan ada sekitar 5 bentuk.
Contoh Normal Form :
1. NORMAL FORM (1NF)
• Menghilangkan duplikasi kolom dari tabel yang sama.
• Buat tabel terpisah untuk masing-masing kelompok data terkait dan
mengidentifikasi setiap baris dengan kolom yang unik (primary key).
2. NORMAL FORM (2NF)
• Menghapus beberapa subset data yang ada pada tabel dan menempatkan
mereka pada tabel terpisah.
• Menciptakan hubungan antara tabel baru dan tabel lama dengan menciptakan
foreign key.
• Tidak ada atribut dalam tabel yang secara fungsional bergantung pada
candidate key tabel tersebut.
3. NORMAL FORM (3NF)
• Memenuhi semua persyaratan dari bentuk normal kedua.
• Menghapus kolom yang tidak tergantung pada primary key.
MYSQL
MySQL merupakan database engine atau server database yang mendukung bahasa
database pencarian SQL. MySQL adalah sebuah perangkat lunak sistem
manajemen basis data SQL atau DBMS yang multithread, multi-user. MySQL AB
membuat MySQL tersedia sebagai perangkat lunak gratis dibawah lisensi GNU
General Public License (GPL), tetapi mereka juga menjual dibawah lisensi
komersial untuk kasus-kasus dimana penggunaannya tidak cocok dengan
penggunaan GPL.
MySQL sebenarnya merupakan turunan salah satu konsep utama dalam database
sejak lama, yaitu SQL (Structured Query Language). SQL adalah sebuah konsep
pengoperasian database, terutama untuk pemilihan atau seleksi dan pemasukan
data, yang memungkinkan pengoperasian data dikerjakan dengan mudah dan cepat
secara otomatis. Keandalan suatu sistem database (DBMS) dapat diketahui dari
cara kerja optimizer-nya dalam melakukan proses perintah-perintah SQL, yang
dibuat oleh user maupun program-program aplikasinya. Sebagai database server,
MySQL dapat dikatakan lebih unggul dibandingkan database server lainnya dalam
query data. Hal ini terbukti untuk query yang dilakukan oleh single user, kecepatan
query MySQL bisa sepuluh kali lebih cepat dari PostgreSQL dan lima kali lebih
cepat dibandingkan Interbase.
SQL (STRUCTURED QUERY LANGUAGE)
Elemen dari SQL yang paling dasar antara lain pernyataan, nama, tipe data,
ekspresi, konstanta dan fungsi bawaan.
1. Pernyataan
Perintah dari SQL yang digunakan untuk meminta sebuah tindakan kepada DBMS.

ALTER : Merubah struktur tabel INSERT : Menambah baris pada tabel


COMMIT : Mengakhiri eksekusi REVOKE : Membatalkan hak kepada
transaksi basis data
CREATE : Membuat tabel, indeks ROLLBACK : Mengembalikan pada
keadaan semula apabila transaksi gagal
DELETE : Menghapus baris pada
dilaksanakan
sebuah tabel
SELECT : Memilih baris dan kolom
DROP : Menghapus tabel, indeks
pada sebuah tabel
GRANT : Menugaskan hak terhadap
UPDATE : Mengubah value pada baris
basis data kepada user
sebuah tabel
SQL
2. Nama
Nama digunakan sebagai identitas, yaitu identitas bagi objek pada DBMS. Misal :
tabel, kolom dan pengguna.
3. Tipe data
Tipe data yang ada dalam MYSQL
Tipe Data Numerik
TINYINT        : Nilai integer yang sangat BEGINT         : Nilai integer dengan nilai
kecil besar
SMALLINT    : Nilai integer yang kecil FLOAT   :Bilangan decimal dengan single-
precission
MEDIUMINT : Nilai integer yang sedang
DOUBLE : Bilangan decimal dengan
INT                : Nilai integer dengan nilai
double-precission
standar
DECIMAL(M,D)   : Bilangan float yang
dinyatakan sebagai string. M : jumlah
digit yang disimpan, D : jumlah angka
dibelakang koma
SQL
Tipe data String antara lain
CHAR : Karakter yang memiliki TINYTEXT      : teks dengan ukuran
panjang tetap yaitu sebanyak n sangat kecil
VARCHAR : Karakter yang memiliki TEXT                : teks yang memiliki
panjang tidak tetap yaitu maksimum ukuran kecil
n
MEDIUMTEXT     : teks yang memiliki
TINYBLOB  : BLOB dengan ukuran ukuran sedang
sangat kecil
LONGTEXT     : teks yang memiliki
BLOB        : BLOB yang memiliki ukuran besar
ukuran kecil ENUM              : kolom diisi dengan satu
MEDIUMBLOB    : BLOB yang member enumerasi
memiliki ukuran sedang
SET                   : Kolom dapat diisi
LONGBLOB    : BLOB yang memiliki dengan beberapa nilai anggota
ukuran besar himpunan
SQL
Tipe data tunggal dan jam

DATE        : date memiliki format tahun-bulan-tanggal


TIME         : time memiliki format jam-menit-detik
DATETIME           : gabungan dari format date dan time

3. Ekpresi
Ekspresi digunakan untuk menghasilkan/menghitung nilai.
Misalnya : jumlah=harga-diskon
Ekspresi aritmatika antara lain :
+  : tambah
–  : kurang
/  : bagi
*  : kali
SQL
4. Konstanta
Nilai yang tetap
5. Fungsi bawaan
Fungsi adalah subprogram yang dapat menghasilkan suatu nilai apabila fungsi tersebut
dipanggil. Fungsi Agregat adalah fungsi yang digunakan untuk melakukan summary,
statistik yang dilakukan pada suatu tabel/query.
AVG(ekspresi)  : digunakan untuk mencari nilai rata-rata dalam kolom dari tabel.
COUNT(x)       : digunakan untuk menghitung jumlah baris dari sebuah kolom dari tabel
MAX(ekspresi) : digunakan untuk mencari nilai yang paling besar dari suatu kolom dari
tabel
MIN(ekspresi)   : digunakan untuk mencari nilai yang paling kecil dari suatu kolom dari
tabel
SUM(ekspresi)  : digunakan untuk mengitung jumlah keseluruhan dari suatu kolom dari
tabel
KELOMPOK PENYATAAN SQL
Pernyataan SQL dapat dikelompokan menjadi 3 kelompok, yaitu : DDL, DML dan DCL.
1. Pernyataan SQL kelompok DDL (Data Defination Language)
DDL berfungsi untuk mendefinisikan atribut basis data, table, atribut(kolom), batasan-batasan
terhadap suatu atribut, serta hubungan antar tabel. Perintah yang digunakan biasanya :
CREATE, ALTER, dan DROP
Membuat Database
Syntax yang digunakan : CREATE DATABASE namadatabase;
Menghapus Database
Syntax yang digunakan : DROP DATABASE namadatabase;
Membuat Tabel
Syntax yang digunakan : CREATE TABLE namatabel;
Menghapus Database
Syntax yang digunakan : DROP DATABASE namadatabase;
Menghapus Tabel
Syntax yang digunakan : DROP TABEL namatabel;
Mendefinisikan null/not null
Syntax yang digunakan : CREATE TABLE namatabel
( Field1 TipeData1 NOT NULL,
Field2 TipeData2
);
KELOMPOK PENYATAAN SQL
2. DML (Data
DML berfungsi untuk memanipuladi data yang ada di dalam basis data, contohnya
untuk pengambilan data, penyisipan data, pengubahan data dan penghapusan data.
Perintah yang digunakan biasanya adalah : INSERT, DELETE, UPDATE, dan
SELECT.
INSERT
menambah baris pada tabel. Syntax yang paling sering digunakan : INSERT INTO
namatabel VALUES (nilai1, nilai2, nilai-n);
DELETE
Menghapus baris pada tabel. Syntax : DELETE FROM namatabel [where kondisi];
UPDATE
Mengubah isi beberapa kolom pada tabel. Syntax : UPDATE namatabel SET
kolom1=nilai1, kolom2=nilai2 [where kondisi];
SELECT
Menampilkan isi dari suatu tabel yang bisa dihubungkan dengan tabel yang
lainnya;
Manipulation Language)
KELOMPOK PENYATAAN SQL
3. Data Control Language (DCL)
GRANT : Perintah ini digunakan untuk memberikan hak/ijin akses oleh
administrator (pemilik utama) server kepada user (pengguna biasa). Hak akses
tersebut berupa hak membuat (CREATE), mengambil (SELECT), menghapus
(DELETE), mengubah (UPDATE), dan hak khusus berkenaan dengan sistem
databasenya.

REVOKE : Perintah ini memiliki kegunaan terbalik dengan GRAND, yaitu untuk
menghilangkan atau mencabut hak akses yang telah diberikan kepada user oleh
administrator.

Anda mungkin juga menyukai