DATA DEFINITION LANGUAGE BASIS DATA I
Structured Query Language Merupakan bahasa query yang digunakan untuk mengakses database relasional Pernyataan SQL dapat dikelompokan menjadi 5 kelompok yaitu : Data Definition Language Data Manipulation Language Data Control Language Pengendali Transaksi Pengendali programatik
Data Definition Language (DDL) DDL merupakan kelompok perintah yang berfungsi untuk mendefinisikan atribut-atribut database, table, atribut (kolom), batasan-batasan terhadap suatu atribut serta hubungan antar table. Yang termasuk dalam kelompok DDL adalah : CREATE ALTER RENAME DROP
CREATE {DATABASE | SCHEMA} [IF NOT EXISTS] db_name Untuk membuat database, perintah yang dipergunakan adalah : CREATE {DATABASE | SCHEMA} [IF NOT EXISTS] db_name IF NOT EXISTS : Akan terjadi error bila database sudah ada dan tidak dituliskan perintah IF NOT EXISTS. Hindari penggunaan spasi dalam pembuatan nama database. Perhatikan panjang nama database, beberapa database tertentu membatasi panjang nama databasenya.
CREATE TABLE Dipergunakan untuk membuat tabel. CREATE [TEMPORARY] TABLE [IF NOT EXISTS] tblname ( colname1 coltype coloptions reference, colname2 coltype coloptions reference... [ , index1, index2 ...] ) [ ENGINE = MyISAM|InnoDB|HEAP ] [ DEFAULT CHARSET = csname [ COLLATE = colname ]] Tabel terdiri dari field-field atau kolom-kolom dengan tipe data tertentu dan baris-baris sebagai penyimpan data.
Contoh : Membuat sebuah tabel baru “Person” yang memiliki lima buah field/kolom yaitu P_Id, LastName, FirstName, Address, dan City. CREATE TABLE Persons ( P_Id int, LastName varchar(255), FirstName varchar(255), Address varchar(255), City varchar(255) )
Primary Key Membuat sebuah tabel baru “Person” yang memiliki lima buah field/kolom yaitu P_Id, LastName, FirstName, Address, dan City. P_Id sebagai primary key. CREATE TABLE Persons ( P_Id int NOT NULL, LastName varchar(255) NOT NULL, FirstName varchar(255), Address varchar(255), City varchar(255), PRIMARY KEY (P_Id) )
Syntax dalam pendeklarasian foreign key FOREIGN KEY [name] (column1) REFERENCES table2 (column2) [ON DELETE {CASCADE | SET NULL | NO ACTION | RESTRICT}] [ON UPDATE {CASCADE | SET NULL | NO ACTION | RESTRICT}]
Tabel Person Tabel Order P_Id LastName FirstName Address City 1 Hansen Ola Timoteivn 10 Sandnes 2 Svendson Tove Borgvn 23 3 Pettersen Kari Storgt 20 Stavanger Tabel Order O_Id OrderNo P_Id 1 77895 3 2 44678 22456 4 24562
CREATE TABLE Orders (. O_Id int NOT NULL,. OrderNo int NOT NULL, CREATE TABLE Orders ( O_Id int NOT NULL, OrderNo int NOT NULL, P_Id int, PRIMARY KEY (O_Id), FOREIGN KEY (P_Id) REFERENCES Persons(P_Id) )
CREATE VIEW <namaview> AS <SQLQuery> View adalah tabel bayangan. Tidak menyimpan data secara fisik. Biasanya berupa hasil query dari tabel- tabel dalam sebuah database. CREATE VIEW <namaview> AS <SQLQuery> Contoh : CREATE VIEW MahasiswaPria AS SELECT * FROM Mahasiswa WHERE JenisKel = “L”
CREATE {UNIQUE} INDEX NamaIndex ON Nama Tabel (nama_kolom) CREATE INDEX Dipergunakan untuk membuat index Sintaks : CREATE {UNIQUE} INDEX NamaIndex ON Nama Tabel (nama_kolom) UNIQUE Jika nilai pada kolom yang diindex terdapat beberapa nilai yang ditampilkan hanyalah satu nilai saja
Contoh CREATE INDEX IDXMHS ON Mahasiswa (NO_MHS)
ALTER Dipergunakan untuk mengubah obyek yang sudah ada. ALTER TABLE Alter table dipergunakan untuk mengubah bentuk tabel yang sudah ada. Biasanya dipergunakan untuk tabel yang sudah memiliki data.
ALTER Sintaks untuk menambah field baru: ALTER TABLE <table-name> ADD <field-name> <data-type> Sintaks utk menghapus field: DROP <field-name> Sintaks untuk mengubah nama field: MODIFY <field-name> <new-field-declaration>
ALTER Sintaks untuk mengubah tipe data field: ALTER TABLE <table-name> ALTER COLUMN <field-name> <new-data-type> Sintaks untuk menambah primary key ALTER TABLE table-name ADD PRIMARY KEY (field-name) Sintaks untuk menambah foreign key ALTER TABLE table-name1 ADD FOREIGN KEY (field-name) REFERENCES table-name2(field-name)
Contoh Perhatikan tabel “Person” diatas! P_Id LastName FirstName Address City 1 Hansen Ola Timoteivn 10 Sandnes 2 Svendson Tove Borgvn 23 3 Pettersen Kari Storgt 20 Stavanger Perhatikan tabel “Person” diatas! Menambah 1 kolom baru yaitu DateOfBirth ALTER TABLE Persons ADD DateOfBirth date
Contoh Mengubah tipe data date pada kolom DateOfBirth menjadi year ALTER TABLE Persons ALTER COLUMN DateOfBirth year Menghapus kolom DateOFBirth ALTER TABLE Persons DROP COLUMN DateOfBirth
RENAME Digunakan untuk mengubah nama tabel Sintaks : RENAME TABLE <table-name> TO <new-table-name> ALTER TABLE <table_name> RENAME TO <new-table- name>
DROP Digunakan untuk menghapus database, tabel atau index DROP DATABASE Sintaks : DROP DATABASE <database-name> ; DROP TABLE Sintaks DROP TABLE <table-name> ;