Search This Blog

SQL Constraint

Anda dapat menggunakan constraint untuk membatasi tipe data yang disimpan ke dalam tabel. Constraint dapat digunakan pada saat pertama kali membuat table dengan statement CREATE TABLE atau setelah tabel dibuat dengan perintah statement ALTER TABLE.

Umumnya jenis Constraint mengandung:
  • NOT NULL Constraint: untuk memastikan kolom dalam tabel tidak berisi nilai NULL.
    CREATE TABLE Pelanggan
    (Kode Integer NOT NULL,
    Nama Varchar (30) NOT NULL,
    Alamat Varchar(30));

  • DEFAULT Constraint: menentukan nilai default pada kolom saat data diinsert pada tabel.
    CREATE TABLE Jurnal_Detail
    (Kode char(4) NOT NULL,
    Keterangan varchar (30),
    Debet Numeric DEFAULT 0,
    Kreditt Numeric DEFAULT 0));

  • UNIQUE Constraint: untuk memastikan tidak ada data ganda dalam kolom.
    CREATE TABLE Pelanggan
    (Kode Integer UNIQUE,
    Nama Varchar (30),
    Alamat Varchar(30));

  • CHECK Constraint: memastikan data dalam kolom memenuhi kriteria yang ditentukan.
    CREATE TABLE Pelanggan
    (Kode integer CHECK (Kode > 0),
    Nama varchar (30),
    Alamat varchar(30));
    Pada contoh di sini kriteria field Kode harus lebih besar dari 0, jika data dientry lebih kecil dari 0 akan terjadi error dan data tidak akan dapat disimpan ke table.

  • Primary Key Constraint: digunakan untuk mengidentifikasi secara unik pada baris.
    MySQL:
    CREATE TABLE Pelanggan
    (Kode integer,
    Nama varchar(30),
    Alamat varchar(30),
    PRIMARY KEY (Kode));

    Oracle:
    CREATE TABLE Pelanggan
    (Kode integer PRIMARY KEY,
    Nama varchar(30),
    Alamat varchar(30));

    SQL Server:
    CREATE TABLE Pelanggan
    (Kode integer PRIMARY KEY,
    Nama varchar(30),
    Alamat varchar(30));

  • Foreign Key Constraint: digunakan untuk integritas referensi dari data.
    MySQL:
    CREATE TABLE ORDERS
    (Kode_Order integer,
    Tgl_Order date,
    Kode_Pelanggan integer,
    Jumlah double,
    Primary Key (Order_ID),
    Foreign Key (Kode_Pelanggan) references Pelanggan(Kode));

    Oracle:
    CREATE TABLE ORDERS
    (Kode_Order integer primary key,
    Tgl_Order date,
    Kode_Pelanggan integer references Pelanggan(Kode),
    Jumlah double);

    SQL Server:
    CREATE TABLE ORDERS
    (Kode_Oder integer primary key,
    Tgl_Order datetime,
    Kode_Pelanggan integer references Pelanggan(Kode),
    Jumlah double);

No comments: