Bahasa Basis Data Data Definition Language (DDL) Interactive Data Manipulation Language (DML) Transaction Control Embedded and Dinamic SQL, contoh C,C++,Java, Cobol, Pascal, etc. Authorization, untuk mendefinisikan hak akses spesifik terhadap objek-objek basis data.
Apa itu DDL & DML? Semua perintah SQL dibagi dalam 2 kategori besar sesuai fungsinya, yaitu : DDL - Data Definition Language merupakan kumpulan perintah SQL yang digunakan untuk membuat, mengubah dan menghapus struktur dan definisi metadata dari objek-objek database. DML - Data Manipulation Language merupakan kumpulan perintah SQL yang digunakan untuk proses pengolahan isi data di dalam table seperti memasukkan, merubah dan menghapus isi data - dan tidak terkait dengan perubahan struktur dan definisi tipe data dari objek database.
DDL Seperti definisi yang telah dijelaskan di atas, DDL adalah kumpulan perintah SQL yang digunakan untuk membuat (create), mengubah (alter) dan menghapus (drop) struktur dan definisi tipe data dari objek-objek database. Objek-objek database pada yang dimaksud - pada MySQL adalah sbb: Database Table View Index Procedure (Stored Procedure) Function Trigger
Contoh Perintah berikut akan membuat table pada database kita dengan nama "ms_karyawan" CREATE TABLE ms_karyawan ( kode_cabang varchar(10) default NULL, kode_karyawan varchar(10) NOT NULL, nama_depan varchar(8) default NULL, nama_belakang varchar(9) default NULL, jenis_kelamin varchar(1) default NULL, )
Daftar Perintah DDL pada MySQL (1) Pembuatan (CREATE) CREATE DATABASE CREATE FUNCTION CREATE INDEX CREATE PROCEDURE CREATE TABLE CREATE TRIGGER CREATE VIEW
Daftar Perintah DDL pada MySQL (2) Perubahan (ALTER & RENAME) ALTER DATABASE ALTER FUNCTION ALTER PROCEDURE ALTER TABLE ALTER VIEW RENAME TABLE
Daftar Perintah DDL pada MySQL (3) Penghapusan (DROP) DROP DATABASE DROP FUNCTION DROP INDEX DROP PROCEDURE DROP TABLE DROP TRIGGER DROP VIEW
Tipe-tipe Tabel MySQL Salah satu kelebihan dari MySQL adalah Anda dapat mendefinisikan tipe untuk tiap tabel. MySQL mendukung beberapa tipe tabel, tergantung konfigurasi saat proses instalasi MySQL. MySQL memiliki 3 (tiga) tipe data utama, yaitu MyISAM, InnoDB dan HEAP.
MyISAM Tipe tabel MyISAM merupakan tipe tabel yang sederhana, stabil dan mudah digunakan. Jika kita akan menyimpan data sederhana yang tidak terlalu rumit, maka gunakanlah tipe tabel ini. Kelebihan utama MyISAM adalah kecepatan dan kestabilannya
InnoDB Tipe tabel InnoDB merupakan tipe tabel MySQL yang mendukung proses transaksi. Tipe ini memiliki beberapa keunggulan, antara lain: a. Mendukung transaksi antar tabel. b. Mendukung row-level-locking. c. Mendukung Foreign-Key Constraints. d. Crash recovery.
HEAP Tabel dengan tipe HEAP tidak menyimpan datanya di hardisk, tetapi menyimpan di RAM (memori). Tipe tabel ini biasanya digunakan sebagai tabel sementara (temporary). Tabel secara otomatis akan dihapus (hilang) dari MySQL saat koneksi ke server diputus atau server MySQL dimatikan.
Tipe-tipe Field (Kolom) MySQL Tipe Numeric TINYINT, SMALLINT, MEDIUMINT, INT, BIGINT, FLOAT, DOUBLE, REAL, DECIMAL, NUMERIC Tipe Date dan Time DATE, TIME, DATETIME, YEAR Tipe String (Text) CHAR, VARCHAR, TINYTEXT, TEXT, MEDIUMTEXT, LONGTEXT Tipe BLOB (Biner) BIT (sejak versi 5.0.3), TINYBLOB, BLOB, MEDIUMBLOB, LONGBLOB Tipe Data yang Lain ENUM, SET,
Implementasi DDL Setiap mahasiswa dapat mempelajari banyak mata kuliah dan setiap mata kuliah dapat dipelajari oleh banyak mahasiswa. Sebagai catatan penting adalah Penentuan derajat relasi tergantung dari aturan bisnis (business rule) yang ada ada di perusahaan/instansi.
Model ERD
Bentuk Tabel Tabel Mahasiswa NIM NmMhs Tgl_lhr Almt_Mhs
Bentuk Tabel Tabel Kuliah KdKul NmKul Sks Semester
Latihan 1 Buatlah struktur tabel dengan sintax MySQL
Model Class Diagram transaksi
Primary key Primary key merupakan salah satu dari candidate key yang terpilih. Alasan pemilihan primary key : Lebih sering di jadikan acuan Lebih ringkas Jaminan keunikan key lebih baik Contoh dari primary key adalah Nim
Contoh Primary Key CREATE TABLE ms_karyawan ( kode_cabang varchar(10) default NULL, kode_karyawan varchar(10) NOT NULL, nama_depan varchar(8) default NULL, nama_belakang varchar(9) default NULL, jenis_kelamin varchar(1) default NULL, PRIMARY KEY (kode_karyawan) )
Foreign Key Foreign Key adalah satu atau beberapa kolom pada table yang merupakan primary key pada table satu namun diletakan pada table dimana tablenya berelasi dengan table dirinya.
Contoh Foreign Key
Sintax relasi CREATE TABLE mhs ( nim CHAR(8) NOT NULL, nama VARCHAR(50) NOT NULL, alamat VARCHAR(60) NOT NULL, id_matkul CHAR(5), FOREIGN KEY(id_matkul) REFERENCES matkul(id_matkul) );
Tabel Dosen Keterangan : PK = Kode Dosen; Latihan 1 Buatlah tabel berikut dalam format MySQL Tabel Dosen Kode Nama Telepon JFA Status Dosen Keterangan : PK = Kode Dosen;
Latihan 2 Tabel Mata Kuliah Kode Mata Kuliah Nama Mata Kuliah SKS Semester Kode Dosen Keterangan : PK = Kode Mata Kuliah; FK = Kode Dosen
Create table nama ( Id_nama INT auto_increment, Nama VARCHAR(20), Primary key(id_nama) )