Slide IST 102 2 Model Data Relational Data Model Database Schema DDL
Sistem Basis Data
Pertemuan 2
Model Data, Relational Data Model, Database Schema, DDL
AER – 2015/2016
Universitas Pembangunan Jaya – SIF
1
Tujuan Pertemuan
• Mahasiswa akan mampu menjelaskan bahasa
yang digunakan di dalam DBMS .
• Mahasiswa akan mampu menjelaskan perbedaan
model data berbasis konseptual dan berbasis
fisik .
• Mahasiswa memahami relational model
database beserta komponennya
• Mahasiswa akan mampu membuat skema
database (DDL) dengan bahasa query (SQL)
AER – 2015/2016
Universitas Pembangunan Jaya – SIF
2
Data Model
• Data model: sekumpulan konsep yang dapat
digunakan untuk mendeskripsikan struktur dari
suatu database.
(referensi: Elmasri and Navathe, Fundamentals of Database Systems 6th Ed, Addison Wesley, 2010.)
• Seperti yang sudah dibahas pada pertemuan 1,
bahwa data model diantaranya adalah; Relational
Model, The Entity-Relationship Model, ObjectBased Data Model, Semistructured Data Model
AER – 2015/2016
Universitas Pembangunan Jaya – SIF
IST102 - 3
What is a Data Model? (actually)
• Representasi secara matematis dari data.
– contoh:
relational model = tables;
semistructured model = trees/graphs.
• Representasi dari Operasi pada data.
• Constraints (kendala/batasan-batasan)
(referensi: Prof. Jennifer Widom Hand-out, stanford university.)
AER – 2015/2016
Universitas Pembangunan Jaya – SIF
IST102 - 4
Relasi = Table
Relation name
(table name)
Attributes, each attribute has type (or domain)
(field or column headers)
tblMhs
Tuples
(rows)
AER – 2015/2016
Universitas Pembangunan Jaya – SIF
IST102 - 5
Schemas
• Relation schema = nama relasi dan daftar attributenya (Optionally: disertai types dari attributes).
– Contoh:
tblMhs(nim, nama, jurusan) atau
tblMhs(nim: string, nama: string, jurusan: string)
• Database = kumpulan relasi.
• Database schema = Deskripsi terstruktur dari suatu
relasi dalam database
• Instance = actual content of a table at given point in
time
AER – 2015/2016
Universitas Pembangunan Jaya – SIF
IST102 - 6
Database = kumpulan relasi
• Database schema = set
of all Relation schema
inside database.
• Database schema =
kumpulan lengkap skema
relasi di dalam database.
Database Akademik
Tabel Mahasiswa
Tabel Mata Kuliah
Tabel Jurusan
Database Akademik
tblMhs(nim: string, nama: string, jurusan:
string)
tblJurusan(kd_jur:string, nm_jur:string,
kd_fak:string, akreditasi:string)
tblMk(kodeMK:string, namaMK:string,
sks:number)
AER – 2015/2016
Universitas Pembangunan Jaya – SIF
IST102 - 7
Mengapa menggunakan Relasi
• Model yang sangat simple & Implementasi yang
Efisien.
• Banyak digunakan oleh sistem database komersial.
• Representasi relasi sangat memudahkan kita
dalam memahami data.
• Model abstract yg mendasari SQL (bahasa
database yg paling penting saat ini).
• Query (ask question of database) dengan high
level language simple & ekspresif
AER – 2015/2016
Universitas Pembangunan Jaya – SIF
IST102 - 8
Contoh Relasi
Mahasiswa(nim, nama, thnMasuk)
Kelas(nid, kdmk)
MataKuliah(kdMk, namaMk, sks)
Nilai(nim, kdMk, grade)
Contoh constraint:
Kelas
Nid
kdmk
dsn001
IST101
dsn002
IST102
dsn001
IST102
dsn003
IST103
dsn001
IST101
• Underline = key (tuples/rows/baris-baris tidak
boleh memiliki memiliki nilai yang sama pada
semua atribut key).
AER – 2015/2016
Universitas Pembangunan Jaya – SIF
IST102 - 9
Database Schemas in SQL
• Keutamaan penggunaan dari SQL adalah
bahasa query (bagian dari DML), untuk
mendapatkan informasi dari suatu database.
• Tapi pada SQL juga disertakan suatu
komponen data-definition (DDL) untuk
mendeskripsikan skema database
AER – 2015/2016
Universitas Pembangunan Jaya – SIF
IST102 - 10
SQL – Definisi untuk Database
(CREATE DATABASE dan DROP DATABASE)
• CREATE DATABASE ;
• DROP DATABASE ;
• Contoh:
CREATE DATABASE latihan;
Perintah pada contoh di atas akan menghasilkan database
dengan nama latihan.
DROP DATABASE latihan;
Perintah pada contoh di atas akan menghapus database
dengan nama latihan.
AER – 2015/2016
Universitas Pembangunan Jaya – SIF
IST102 - 11
SQL – Definisi untuk Table
(CREATE TABLE dan DROP TABLE)
• CREATE TABLE (
[atribut_kolom] , … … …
, [definisi_key] () );
, Merupakan tipe dari data yang akan diisikan pada kolom.
[atribut_kolom] ,
NOT NULL : isi kolom ini tidak boleh NULL (atau tidak diisi).
AUTO_INCREMENT : kolom ini berisi angka yang merupakan penambahan dari angka record
sebelumnya, dan penambahan ini otomatis dilakukan oleh MySQL.
[definisi_key] ,
PRIMARY KEY : digunakan untuk mendefinisikan suatu kolom sebagai primary key. Kita bisa
mendefinisikan lebih dari satu kolom sebagai primary key (dengan menggunakan koma sebagai
pemisah kolom).
• DROP TABLE ;
Perintah di atas untuk menghapus table.
Contoh: DROP TABLE Mahasiswa
AER – 2015/2016
Universitas Pembangunan Jaya – SIF
IST102 - 12
SQL – Definisi untuk Table
• Contoh:
CREATE TABLE Mahasiswa (
nim char(10) NOT NULL,
nama varchar(100) NOT NULL,
thnMasuk year,
Tipe_kolom
Tipe_kolom yang
yang umum
umum adalah:
adalah:
PRIMARY KEY (nim) INT
angka
bilangan
bulat
INT angka bilangan bulat atau
atau INTEGER.
INTEGER.
DOUBLE
DOUBLE angka
angka dengan
dengan desimal.
desimal.
CHAR(n
CHAR(n )) fixed-length
fixed-length string
string of
of nn characters.
characters.
);
VARCHAR(n ) variable-length string of up to n characters.
VARCHAR(n ) variable-length string of up to n characters.
DATE
DATE tipe
tipe tanggal.
tanggal.
YEAR
tipe
tahun.
YEAR tipe tahun.
AER – 2015/2016
Universitas Pembangunan Jaya – SIF
IST102 - 13
SQL – Nilai pada SQL
• Tipe Kolom Angka:
• Angka bilangan bulat
TINYINT -128 sampai 127
SMALLINT -32,768 sampai 32,767
MEDIUMINT -8,388,608 sampai 8,388,607
INT -2,147,483,648 sampai 2,147,483,647
BIGINT -9,223,372,036,854,775,808 sampai
9,223,372,036,854,775,807
AER – 2015/2016
Universitas Pembangunan Jaya – SIF
IST102 - 14
SQL – Nilai pada SQL
• Tipe Kolom Angka:
• Angka dengan desimal
DECIMAL angka dengan desimal
Contoh penulisan:
lebar DECIMAL(5, 2)
Artinya:
Kolom lebar akan menyimpan nilai angka desimal dengan format
nnn.nn (misal: 562.50)
DOUBLE angka bilangan real.
AER – 2015/2016
Universitas Pembangunan Jaya – SIF
IST102 - 15
SQL – Nilai pada SQL
• Tipe Kolom String:
CHAR(n ) menyimpan teks dengan jumlah karakter tetap sebanyak n
karakter.
VARCHAR(n ) menyimpan teks dengan jumlah karakter yang bervariasi
sampai paling banyak n karakter.
Contoh penulisan:
id char(5)
kode varchar(5)
Artinya:
id akan menyimpan nilai berupa string sebanyak 5 karakter.
kode akan menyimpan nilai berupa string dengan maksimum 5 karakter
Perbedaan char(n) dengan varchar(n):
Jika id diisi dengan nilai ‘123’ maka akan tersimpan string ‘123 ‘ (terdapat 2 space kosong di akhir string)
Jika kode diisi dengan nilai ‘123’ maka akan tersimpan string ‘123’
AER – 2015/2016
Universitas Pembangunan Jaya – SIF
IST102 - 16
SQL – Nilai pada SQL
• Tipe Kolom tanggal:
DATE tipe tanggal
Penjelasan:
Jika kolom dengan tipe DATE ini akan diisi nilai, maka format
penulisannya adalah:
yyyy-mm-dd (contoh: 2016-02-10).
YEAR tipe tahun
Penjelasan:
Jika kolom dengan tipe YEAR ini akan diisi nilai, maka format
penulisannya adalah:
yyyy (contoh: 2016)
AER – 2015/2016
Universitas Pembangunan Jaya – SIF
IST102 - 17
SQL – Nilai pada SQL
• Tipe Kolom waktu:
TIME tipe waktu
Penjelasan:
Jika kolom dengan tipe TIME ini akan diisi nilai, maka
format penulisannya adalah:
hh:mm:ss (contoh: 15:30:02).
AER – 2015/2016
Universitas Pembangunan Jaya – SIF
IST102 - 18
SQL – Deklarasi Keys
• Key merupakan atribut atau sekumpulan atribut dimana
nilainya adalah unik (tidak boleh sama), dalam tiap tuple
atau sekumpulan attribute dimana kombinasi nilainya unik
• Suatu atribut atau sekumpulan atribut boleh
dideklarasikan PRIMARY KEY or UNIQUE.
MataKuliah
kdMk
namaMk
sks
Nilai
nim
kdMk
grade
SIF102
Struktur Data
4
2013081001
SIF102
C
SIF204
Analisis Proses Bisnis
3
2013081001
SIF204
A
SIF204
Analisis Proses Bisnis
3
2014081001
SIF204
B
IST102
Sistem Basis Data
3
2015081001
IST102
B
SIF102
Struktur Data
4
2013081001
SIF102
A
AER – 2015/2016
Universitas Pembangunan Jaya – SIF
IST102 - 19
SQL – Deklarasi Keys – Single Attribute Key
• Tuliskan PRIMARY KEY atau UNIQUE setelah tipe atribut (kolom) pada deklarasi membuat tabel.
• Contoh:
CREATE TABLE Mahasiswa (
nim char(10) NOT NULL UNIQUE,
nama varchar(100) NOT NULL,
thnMasuk year,
);
CREATE TABLE Mahasiswa (
nim char(10) NOT NULL PRIMARY KEY,
nama varchar(100) NOT NULL,
thnMasuk year
);
nim
…
nama
…
thnMasuk
…
CREATE TABLE Mahasiswa (
nim char(10) NOT NULL,
nama varchar(100) NOT NULL,
thnMasuk year,
PRIMARY KEY (nim)
);
AER – 2015/2016
Universitas Pembangunan Jaya – SIF
IST102 - 20
SQL – Deklarasi Keys – Multi Attribute Keys
• Deklarasi Key dapat juga dilakukan terhadap
sekumpulan atribut pada tabel
• Hal ini dilakukan jika memang tabel memerlukan key
multi-atribut (lebih dari satu atribut.
• Contoh:
CREATE TABLE Nilai(
nim char(10) NOT NULL,
kdMk char(6) NOT NULL,
grade char(1),
PRIMARY KEY (nim, kdMk)
);
AER – 2015/2016
nim
…
Universitas Pembangunan Jaya – SIF
kdMK
…
grade
…
IST102 - 21
SQL – PRIMARY KEY vs. UNIQUE
• Hanya boleh satu PRIMARY KEY untuk satu
tabel, tapi bisa boleh banyak UNIQUE untuk
satu tabel.
• Atribut suatu PRIMARY KEY tidak boleh berisi
nilai NULL dalam satu tuple/row/baris nilai,
tapi atribut suatu unique boleh bernilai null.
AER – 2015/2016
Universitas Pembangunan Jaya – SIF
IST102 - 22
SQL – Modifikasi Table
(ALTER TABLE)
• Modifikasi untuk enambah kolom/field pada tabel:
ALTER TABLE
ADD
• Modifikasi untuk menghapus kolom/field pada tabel:
ALTER TABLE
DROP COLUMN
• Modifikasi untuk merubah tipe kolom pada tabel:
ALTER TABLE
MODIFY COLUMN
AER – 2015/2016
Universitas Pembangunan Jaya – SIF
IST102 - 23
See You Next Session
• Thank’s
AER – 2015/2016
Universitas Pembangunan Jaya – SIF
IST102 - 24
tugas
• Buat suatu database dengan ketentuan:
– nama bebas,
– minimal berisi 3 table,
– diantara 3 table itu minimal terdapat 1 table dengan
multiattribute key.
– Buat skema relasinya (relation schema)
– kemudian buat SQL (Query Language) untuk membuat
database (skema database) tersebut.
– Masing-masing harus membuat database yang berbeda.
AER – 2015/2016
Universitas Pembangunan Jaya – SIF
IST102 - 25
Pertemuan 2
Model Data, Relational Data Model, Database Schema, DDL
AER – 2015/2016
Universitas Pembangunan Jaya – SIF
1
Tujuan Pertemuan
• Mahasiswa akan mampu menjelaskan bahasa
yang digunakan di dalam DBMS .
• Mahasiswa akan mampu menjelaskan perbedaan
model data berbasis konseptual dan berbasis
fisik .
• Mahasiswa memahami relational model
database beserta komponennya
• Mahasiswa akan mampu membuat skema
database (DDL) dengan bahasa query (SQL)
AER – 2015/2016
Universitas Pembangunan Jaya – SIF
2
Data Model
• Data model: sekumpulan konsep yang dapat
digunakan untuk mendeskripsikan struktur dari
suatu database.
(referensi: Elmasri and Navathe, Fundamentals of Database Systems 6th Ed, Addison Wesley, 2010.)
• Seperti yang sudah dibahas pada pertemuan 1,
bahwa data model diantaranya adalah; Relational
Model, The Entity-Relationship Model, ObjectBased Data Model, Semistructured Data Model
AER – 2015/2016
Universitas Pembangunan Jaya – SIF
IST102 - 3
What is a Data Model? (actually)
• Representasi secara matematis dari data.
– contoh:
relational model = tables;
semistructured model = trees/graphs.
• Representasi dari Operasi pada data.
• Constraints (kendala/batasan-batasan)
(referensi: Prof. Jennifer Widom Hand-out, stanford university.)
AER – 2015/2016
Universitas Pembangunan Jaya – SIF
IST102 - 4
Relasi = Table
Relation name
(table name)
Attributes, each attribute has type (or domain)
(field or column headers)
tblMhs
Tuples
(rows)
AER – 2015/2016
Universitas Pembangunan Jaya – SIF
IST102 - 5
Schemas
• Relation schema = nama relasi dan daftar attributenya (Optionally: disertai types dari attributes).
– Contoh:
tblMhs(nim, nama, jurusan) atau
tblMhs(nim: string, nama: string, jurusan: string)
• Database = kumpulan relasi.
• Database schema = Deskripsi terstruktur dari suatu
relasi dalam database
• Instance = actual content of a table at given point in
time
AER – 2015/2016
Universitas Pembangunan Jaya – SIF
IST102 - 6
Database = kumpulan relasi
• Database schema = set
of all Relation schema
inside database.
• Database schema =
kumpulan lengkap skema
relasi di dalam database.
Database Akademik
Tabel Mahasiswa
Tabel Mata Kuliah
Tabel Jurusan
Database Akademik
tblMhs(nim: string, nama: string, jurusan:
string)
tblJurusan(kd_jur:string, nm_jur:string,
kd_fak:string, akreditasi:string)
tblMk(kodeMK:string, namaMK:string,
sks:number)
AER – 2015/2016
Universitas Pembangunan Jaya – SIF
IST102 - 7
Mengapa menggunakan Relasi
• Model yang sangat simple & Implementasi yang
Efisien.
• Banyak digunakan oleh sistem database komersial.
• Representasi relasi sangat memudahkan kita
dalam memahami data.
• Model abstract yg mendasari SQL (bahasa
database yg paling penting saat ini).
• Query (ask question of database) dengan high
level language simple & ekspresif
AER – 2015/2016
Universitas Pembangunan Jaya – SIF
IST102 - 8
Contoh Relasi
Mahasiswa(nim, nama, thnMasuk)
Kelas(nid, kdmk)
MataKuliah(kdMk, namaMk, sks)
Nilai(nim, kdMk, grade)
Contoh constraint:
Kelas
Nid
kdmk
dsn001
IST101
dsn002
IST102
dsn001
IST102
dsn003
IST103
dsn001
IST101
• Underline = key (tuples/rows/baris-baris tidak
boleh memiliki memiliki nilai yang sama pada
semua atribut key).
AER – 2015/2016
Universitas Pembangunan Jaya – SIF
IST102 - 9
Database Schemas in SQL
• Keutamaan penggunaan dari SQL adalah
bahasa query (bagian dari DML), untuk
mendapatkan informasi dari suatu database.
• Tapi pada SQL juga disertakan suatu
komponen data-definition (DDL) untuk
mendeskripsikan skema database
AER – 2015/2016
Universitas Pembangunan Jaya – SIF
IST102 - 10
SQL – Definisi untuk Database
(CREATE DATABASE dan DROP DATABASE)
• CREATE DATABASE ;
• DROP DATABASE ;
• Contoh:
CREATE DATABASE latihan;
Perintah pada contoh di atas akan menghasilkan database
dengan nama latihan.
DROP DATABASE latihan;
Perintah pada contoh di atas akan menghapus database
dengan nama latihan.
AER – 2015/2016
Universitas Pembangunan Jaya – SIF
IST102 - 11
SQL – Definisi untuk Table
(CREATE TABLE dan DROP TABLE)
• CREATE TABLE (
[atribut_kolom] , … … …
, [definisi_key] () );
, Merupakan tipe dari data yang akan diisikan pada kolom.
[atribut_kolom] ,
NOT NULL : isi kolom ini tidak boleh NULL (atau tidak diisi).
AUTO_INCREMENT : kolom ini berisi angka yang merupakan penambahan dari angka record
sebelumnya, dan penambahan ini otomatis dilakukan oleh MySQL.
[definisi_key] ,
PRIMARY KEY : digunakan untuk mendefinisikan suatu kolom sebagai primary key. Kita bisa
mendefinisikan lebih dari satu kolom sebagai primary key (dengan menggunakan koma sebagai
pemisah kolom).
• DROP TABLE ;
Perintah di atas untuk menghapus table.
Contoh: DROP TABLE Mahasiswa
AER – 2015/2016
Universitas Pembangunan Jaya – SIF
IST102 - 12
SQL – Definisi untuk Table
• Contoh:
CREATE TABLE Mahasiswa (
nim char(10) NOT NULL,
nama varchar(100) NOT NULL,
thnMasuk year,
Tipe_kolom
Tipe_kolom yang
yang umum
umum adalah:
adalah:
PRIMARY KEY (nim) INT
angka
bilangan
bulat
INT angka bilangan bulat atau
atau INTEGER.
INTEGER.
DOUBLE
DOUBLE angka
angka dengan
dengan desimal.
desimal.
CHAR(n
CHAR(n )) fixed-length
fixed-length string
string of
of nn characters.
characters.
);
VARCHAR(n ) variable-length string of up to n characters.
VARCHAR(n ) variable-length string of up to n characters.
DATE
DATE tipe
tipe tanggal.
tanggal.
YEAR
tipe
tahun.
YEAR tipe tahun.
AER – 2015/2016
Universitas Pembangunan Jaya – SIF
IST102 - 13
SQL – Nilai pada SQL
• Tipe Kolom Angka:
• Angka bilangan bulat
TINYINT -128 sampai 127
SMALLINT -32,768 sampai 32,767
MEDIUMINT -8,388,608 sampai 8,388,607
INT -2,147,483,648 sampai 2,147,483,647
BIGINT -9,223,372,036,854,775,808 sampai
9,223,372,036,854,775,807
AER – 2015/2016
Universitas Pembangunan Jaya – SIF
IST102 - 14
SQL – Nilai pada SQL
• Tipe Kolom Angka:
• Angka dengan desimal
DECIMAL angka dengan desimal
Contoh penulisan:
lebar DECIMAL(5, 2)
Artinya:
Kolom lebar akan menyimpan nilai angka desimal dengan format
nnn.nn (misal: 562.50)
DOUBLE angka bilangan real.
AER – 2015/2016
Universitas Pembangunan Jaya – SIF
IST102 - 15
SQL – Nilai pada SQL
• Tipe Kolom String:
CHAR(n ) menyimpan teks dengan jumlah karakter tetap sebanyak n
karakter.
VARCHAR(n ) menyimpan teks dengan jumlah karakter yang bervariasi
sampai paling banyak n karakter.
Contoh penulisan:
id char(5)
kode varchar(5)
Artinya:
id akan menyimpan nilai berupa string sebanyak 5 karakter.
kode akan menyimpan nilai berupa string dengan maksimum 5 karakter
Perbedaan char(n) dengan varchar(n):
Jika id diisi dengan nilai ‘123’ maka akan tersimpan string ‘123 ‘ (terdapat 2 space kosong di akhir string)
Jika kode diisi dengan nilai ‘123’ maka akan tersimpan string ‘123’
AER – 2015/2016
Universitas Pembangunan Jaya – SIF
IST102 - 16
SQL – Nilai pada SQL
• Tipe Kolom tanggal:
DATE tipe tanggal
Penjelasan:
Jika kolom dengan tipe DATE ini akan diisi nilai, maka format
penulisannya adalah:
yyyy-mm-dd (contoh: 2016-02-10).
YEAR tipe tahun
Penjelasan:
Jika kolom dengan tipe YEAR ini akan diisi nilai, maka format
penulisannya adalah:
yyyy (contoh: 2016)
AER – 2015/2016
Universitas Pembangunan Jaya – SIF
IST102 - 17
SQL – Nilai pada SQL
• Tipe Kolom waktu:
TIME tipe waktu
Penjelasan:
Jika kolom dengan tipe TIME ini akan diisi nilai, maka
format penulisannya adalah:
hh:mm:ss (contoh: 15:30:02).
AER – 2015/2016
Universitas Pembangunan Jaya – SIF
IST102 - 18
SQL – Deklarasi Keys
• Key merupakan atribut atau sekumpulan atribut dimana
nilainya adalah unik (tidak boleh sama), dalam tiap tuple
atau sekumpulan attribute dimana kombinasi nilainya unik
• Suatu atribut atau sekumpulan atribut boleh
dideklarasikan PRIMARY KEY or UNIQUE.
MataKuliah
kdMk
namaMk
sks
Nilai
nim
kdMk
grade
SIF102
Struktur Data
4
2013081001
SIF102
C
SIF204
Analisis Proses Bisnis
3
2013081001
SIF204
A
SIF204
Analisis Proses Bisnis
3
2014081001
SIF204
B
IST102
Sistem Basis Data
3
2015081001
IST102
B
SIF102
Struktur Data
4
2013081001
SIF102
A
AER – 2015/2016
Universitas Pembangunan Jaya – SIF
IST102 - 19
SQL – Deklarasi Keys – Single Attribute Key
• Tuliskan PRIMARY KEY atau UNIQUE setelah tipe atribut (kolom) pada deklarasi membuat tabel.
• Contoh:
CREATE TABLE Mahasiswa (
nim char(10) NOT NULL UNIQUE,
nama varchar(100) NOT NULL,
thnMasuk year,
);
CREATE TABLE Mahasiswa (
nim char(10) NOT NULL PRIMARY KEY,
nama varchar(100) NOT NULL,
thnMasuk year
);
nim
…
nama
…
thnMasuk
…
CREATE TABLE Mahasiswa (
nim char(10) NOT NULL,
nama varchar(100) NOT NULL,
thnMasuk year,
PRIMARY KEY (nim)
);
AER – 2015/2016
Universitas Pembangunan Jaya – SIF
IST102 - 20
SQL – Deklarasi Keys – Multi Attribute Keys
• Deklarasi Key dapat juga dilakukan terhadap
sekumpulan atribut pada tabel
• Hal ini dilakukan jika memang tabel memerlukan key
multi-atribut (lebih dari satu atribut.
• Contoh:
CREATE TABLE Nilai(
nim char(10) NOT NULL,
kdMk char(6) NOT NULL,
grade char(1),
PRIMARY KEY (nim, kdMk)
);
AER – 2015/2016
nim
…
Universitas Pembangunan Jaya – SIF
kdMK
…
grade
…
IST102 - 21
SQL – PRIMARY KEY vs. UNIQUE
• Hanya boleh satu PRIMARY KEY untuk satu
tabel, tapi bisa boleh banyak UNIQUE untuk
satu tabel.
• Atribut suatu PRIMARY KEY tidak boleh berisi
nilai NULL dalam satu tuple/row/baris nilai,
tapi atribut suatu unique boleh bernilai null.
AER – 2015/2016
Universitas Pembangunan Jaya – SIF
IST102 - 22
SQL – Modifikasi Table
(ALTER TABLE)
• Modifikasi untuk enambah kolom/field pada tabel:
ALTER TABLE
ADD
• Modifikasi untuk menghapus kolom/field pada tabel:
ALTER TABLE
DROP COLUMN
• Modifikasi untuk merubah tipe kolom pada tabel:
ALTER TABLE
MODIFY COLUMN
AER – 2015/2016
Universitas Pembangunan Jaya – SIF
IST102 - 23
See You Next Session
• Thank’s
AER – 2015/2016
Universitas Pembangunan Jaya – SIF
IST102 - 24
tugas
• Buat suatu database dengan ketentuan:
– nama bebas,
– minimal berisi 3 table,
– diantara 3 table itu minimal terdapat 1 table dengan
multiattribute key.
– Buat skema relasinya (relation schema)
– kemudian buat SQL (Query Language) untuk membuat
database (skema database) tersebut.
– Masing-masing harus membuat database yang berbeda.
AER – 2015/2016
Universitas Pembangunan Jaya – SIF
IST102 - 25