SQL - Data Definition Language (DDL)



Tentang SQL
SQL atau dibaca Sequel. Kepanjangan dari SQL adalah Structured Query Language. SQL adalah suatu RDBMS (Relational Database Management System) yaitu aplikasi sistem yang menjalankan fungsi pengolahan data. SQL ini dikembangkan oleh IBM pada pertengahan 1970s. Sekarang
merupakan bahasa standar internasional untuk pembuatan (creating) dan query database relational. SQL dikenal dengan standarnya SQL-99 (disetujui sebagai standar ANSI tahun 1999).

Penulisan Perintah SQL :

  • Perintah SQL tidak case sensitive
  • Perintah SQL bisa ditulis pada satu baris atau lebih
  • Antar klausa perintah biasanya ditulis pada baris yang berbeda
  • Keywords tidak dapat dipisah antar baris
  • Tabs dan spasi diperbolehkan agar mudah dibaca.
  • Setiap akhir perintah SQL (tidak baris) diakhiri dengan tanda(;)
  • Komponen tabel : tabel, field, record


Tipe Data Dasar

  • NUMBER, menyimpan bilangan bulat serta bilangan pecahan di belakang titik desimal. Panjang maksimum tergantung pada implementasi oleh sistem operasi yang digunakan, tetapi pada umumnya 38 digit.
  • DATE, menyimpan data tanggal dan waktu dalam tabel. Tipe data DATE menyimpan data tahun (termasuk abad), bulan, hari, jam, menit, serta detik.. Oracle XE menggunakan format tanggal default dalam bentuk DD-MM-YY.
  • RAW dan LONG RAW, digunakan untuk menyimpan data yang tidak perlu ditafsirkan. Tipe data ini ditujukan untuk data biner atau string byte. RAW adalah tipe data yang panjangnya berubah-ubah seperti tipe data varchar2. Long RAW dapat digunakan untuk menyimpan gambar (image), suara(audio), dokumen atau larik dari data biner, yang penafsirannya bergantung pada pengguna.
  • BFILE, menyimpan data biner tak terstruktur dalam berkas yang berada di luar database (external file). Data yang dapat disimpan hingga 8 GB. BFILE bersifat “read – only”.
  • BLOB,CLOB,dan NCLOB, ketiga tipe data ini memungkinkan kita menyimpan blok-blok data tidak terstruktur berukuran besar (misalnya teks, gambar, klip video, serta berkas suara) dalam format biner atau format karakter. BLOB dapat menyimpan data biner hingga sejumlah 8 TeraByte, sedangkan CLOB dan NCLOB menyimpan hingga 8 TerraByte data karakter di basis data. CLOB menyimpan data karakter, sedangkan NCLOB menyimpan data karakter unicode. CLOB dan NCLOB berpartisipasi penuh dalam transaksi. Perubahan yang terjadi pada CLOB dan NCLOB dapat ditanamkan ke Basis Data (COMMIT) atau dibatalkan (ROLLBACK).
  • ROWID, digunakan untuk menyimpan alamat (rowid) setiap baris dalam basis data. Kita tidak dapat melakukan apa-apa terhadap ROWID.Sistem basis data ORACLE XE menggunakannya secara internal untuk membangun indeks.


Komponen SQL
Data Definition Language (DDL)
            Create, Alter, Drop
Data Manipulation Language (DML)
            Select, Insert, Update, Delete
Data Control Language (DCL)
            Grant, Commit, Revoke, Rollback, Savepoint

Data Definition Language (DDL)
Data Definition Language (DDL) adalah suatu tata bahasa definisi data pada MySQL, DDL digunakan untuk mendefinisikan suatu DATABASE, TABLE, TABLESPACE, LOGFILE GROUP, SERVER, INDEX. DDL umumnya digunakan untuk mendefinisikan suatu wadah data atau recor.
Nama tabel harus unik
Nama kolom dalam sebuah tabel harus berbeda
Nama kolom ditulis dalam tanda kurung dan dipisahkan dengan tanda koma(,)
Pada nama kolom terakhir tidak boleh pakai tanda koma
Setiap kolom harus memiliki type data dan lebarnya
Constraints (batasan) bisa berupa
Batasan pada kolom
Batasan pada tabel
DDL terdiri dari CREATE, ALTER, DROP, RENAME berikut penjelasan mengenai masing-masingnya :
CREATE adalah perintah yang digunakan untuk membuat, termasuk diantaranya membuat database baru, tabel baru, view baru, dan kolom. Selain itu CREATE digunakan untuk mendefinisikan suatu struktur, wadah yang digunakan sebagai media suatu data/record, dan atribut pendukung lainnya.

Syntax Tanpa Constraints
CREATE TABLE nama_tabel (
nama field ke-1 tipe_data (lebar_field),
. . .
. . .
nama field ke-n tipe_data (lebar_field),
);
Contoh :
CREATE TABLE barang (
kode_barang char(6),
nama_barang varchar2(25),
satuan_barang varchar(20),
stok_barang number(4)
);

Syntax Dengan Constraints
Untuk membuat tabel acuan (references) sebelum tanda ‘)’ tambahkan sintak :
Constraint nama_constraint primary key (nama_field_primarykey) notnull);
Untuk membuat tabel yang mengacu pada tabel lain (tabel relasi) sebelum tanda
‘)’ tambahkan sintak :
Constraint nama_constraint primary key (nama_field_primarykey-1,…,
nama_field_primarykey-n),
Constraint nama_constraint foreignkey (nama_field_foreignkey-1)
References nama_tabel_acuan-1 (nama_field_primarykey-1),
.
.
Constraint nama_constraint foreignkey (nama_field_foreignkey-n)
References nama_tabel_acuan-n (nama_field_primarykey-n)
);

Contoh :
CREATE TABLE barang (
kode_barang char(6),
nama_barang varchar(25),
satuan_barang varchar(20),
stok_barang int,
constraint pk_barang primary
key (kode_barang)
);

CREATE TABLE pasok (
kode_pasok char(10),
kode_barang char(6),
kode_suplier char(5),
tanggal_pasok date,
jumlah_pasok int,
constraint pk_pasok primary key
(kode_pasok),
constraint fk_pasok_barang foreign
key (kode_barang),
references barang (kode_barang),
constraint fk_pasok_suplier foreign
key (kode_suplier),
references suplier (kode_suplier)
);

ALTER adalah perintah yang digunakan untuk mengubah struktur tabel yang telah dibuat.
Pekerjaannya mencakup mengganti nama tabel, menambah kolom, mengubah kolom, menghapus kolom, maupun memberikan atribut pada kolom.
Modifikasi pendefinisian tabel :
Beberapa sistem database tidak mendukung penghapusan (dropping) suatu kolom pada tabel
Tipe data saat dimodifikasi jika suatu kolom tidak memiliki nilai

ALTER TABLE nama_tabel
ADD/MODIFY nama_field tipe_data(lebar_field)

ALTER TABLE suplier
ADD Alamat_Suplier varchar(50);
Atau :
ALTER TABLE suplier
MODIFY Nama_Suplier varchar(25);

DROP adalah perintah yang digunakan untuk menghapus database dan tabel.
REMOVE TABLE
DROP TABLE table_name;
DROP TABLE pasok;

RENAME digunakan untuk mengganti nama suatu struktur, wadah yang digunakan sebagai media suatu data/record. Penggunaan RENAME hanya berlaku untuk DATABASE dan TABLE. Berikut dibawah ini aturan penulisan dan contoh penggunaannya :
DATABASE
            Aturan Penulisan:
            RENAME {DATABASE | SCHEMA} db_name TO new_db_name;

            Contoh :
            RENAME DATABASE db_latihan TO db_latihan;

TABLE
            Aturan Penulisan:
            RENAME TABLE tbl_name TO new_tbl_name
            [, tbl_name2 TO new_tbl_name2] ...

            Contoh :
            RENAME TABLE tbl_latihan TO tbl_latihan;
            RENAME TABLE tbl_latihan2 TO tbl_latihan3, tbl_latihan4 TO tbl_lat4;

Komentar

Postingan populer dari blog ini

Pengertian Identitas Nasional

Progress Aplikasi Database Hotel Kelompok 6

CODING PROGRAM C++ MENU MAKANAN