INTEGRITY CONSTRAINT
POSTGRESQL
- Diky Arga Anggara | A11.2013.07386
- Setyadi Putra D. | A11.2013.07785
- Muhammad Atho'il M | A11.2013.07805
- Hafidz Zakky D | A11.2013.07874
POSTGRESQL
Merupakan relasional sistem manajemen basis data yang termasuk dalam FREE OPEN SOURCE SOFTWARE (FOSS), telah dikembangkan lebih dari 15 tahun oleh tim volunter diseluruh dunia.
PostgreSQL runs on all major operating systems, including Linux, UNIX (AIX, BSD, HP-UX, SGI IRIX, Mac OS X, Solaris, Tru64), and Windows.
POSTGRESQL
It supports text, images, sounds, and video, and includes programming interfaces for C / C++ , Java , Perl , Python , Ruby, Tcl and Open Database Connectivity (ODBC).
PostgreSQL runs on all major operating systems, including Linux, UNIX (AIX, BSD, HP-UX, SGI IRIX, Mac OS X, Solaris, Tru64), and Windows.
POSTGRESQL memiliki banyak fitur seperti
- User-defined types
- Table inheritance
- Foreign key referential integrity
- Multiversion concurrency control
- Views, rules, sub-select
- Streaming Replication
Constraint ?
Batasan atau aturan yang ada pada table dan kolom
Constraint semacem aturan untuk memastikan data yang masuk ke database benar, untuk menjaga akurasi dan readibilitas data.
MACAM - MACAM CONSTRAINT PADA POSTGESQL
- NOT NULL
- UNIQUE
- PRIMARY KEY
- FOREIGN KEY
- CHECK
- EXCLUSION
Not Null
Secara bawaan, kolom dapat bernilai null, untuk membuatnya tidak boleh null, tambahkan "NOT NULL" pada atribut kolom.
CREATE TABLE MHS(
ID INT PRIMARY KEY NOT NULL,
NAMA TEXT NOT NULL,
UMUR INT NOT NULL,
Alamat CHAR(50)
);
UNIQUE Constraint
Menjaga setiap data dalam satu kolom tidak ada yang sama, misal : tidak boleh ada nama yang sama dalam kolom nama_belakang.
Syntax : UNIQUE
CREATE TABLE MHS(
ID INT PRIMARY KEY NOT NULL,
NAMA TEXT NOT NULL UNIQUE,
UMUR INT NOT NULL,
Alamat CHAR(50)
);
PRIMARY KEY Constraint
Menjaga keunikannya data pada setiap baris record dengan menggunakan identifier id, mirip dengan Unique, namun dalam satu tabel hanya boleh ada satu Primary Key, jadi Primary Key itu Unique Ids.
CREATE TABLE MHS(
ID INT PRIMARY KEY NOT NULL,
NAMA TEXT NOT NULL UNIQUE,
UMUR INT NOT NULL,
Alamat CHAR(50)
);
FOREIGN KEY Constraint
Foreign Key ato Kunci tamu menjadi refrensi untuk merelasikan dua tabel atau lebih,
CREATE TABLE KULIAH(
ID INT PRIMARY KEY NOT NULL,
MATKUL CHAR(50) NOT NULL,
EMP_ID INT references MHS(ID)
);
Syntax : references table(column)
Misal kita ingin merefrensi ke tabel MHS sebelumnya.
CHECK Constraint
Mengecek data sebelum data dimasukan dengan kondisi tertentu, misal umur mahasiswa harus 17 ++
CREATE TABLE MHS(
ID INT PRIMARY KEY NOT NULL,
NAMA TEXT NOT NULL UNIQUE,
UMUR INT NOT NULL CHECK(UMUR > 17),
Alamat CHAR(50)
);
Syntax : check (kondisi)
EXCLUSION Constraint
Melakukan pengecualian dengan membandingkan dua row memakai expresi comparisons operator, akan mengebalikan nilai false atau null.
CREATE TABLE MHS(
ID INT PRIMARY KEY NOT NULL,
NAMA TEXT NOT NULL UNIQUE,
UMUR INT NOT NULL CHECK(UMUR > 17),
Alamat CHAR(50),
EXCLUDE USING gist
(NAMA WITH =,
UMUR WITH <>)
);
Syntax : EXCLUDE USING gist (kondisi)
EXCLUSION Constraint
INSERT INTO COMPANY7 VALUES(1, 'Doscom', 18, 'Kendal', 20000.00 );
INSERT INTO COMPANY7 VALUES(2, 'Doscom', 18, 'Semarang', 20000.00 );
INSERT INTO COMPANY7 VALUES(3, 'Diky', 20, 'Kaliwungu', 20000.00 );
Insert dua pertama, akan sukses dijalankan, sedangkan yang ketiga error.
Postgresql
By Muhammad Athoil Maula
Postgresql
- 889