Database and SQL Fundamental 2
π§© Pertemuan 2 β Struktur Tabel & Constraint di SQL Server
π― Tujuan Pembelajaran
Pada pertemuan ini kamu akan belajar cara mendesain tabel, menentukan tipe data yang tepat, dan mengatur aturan integritas data (constraint) menggunakan Microsoft SQL Server.
Setelah pertemuan ini, kamu diharapkan bisa:
- Membuat dan mengubah tabel dengan
CREATE TABLEdanALTER TABLE - Memahami fungsi dan penggunaan berbagai constraint
- Menjaga kualitas data dengan aturan logis dan relasi antar tabel
π Konsep Dasar Tabel dan Tipe Data
π§± Apa itu Tabel?
Tabel adalah struktur utama dalam database yang berisi data dalam bentuk baris (record) dan kolom (field).
Setiap kolom memiliki nama dan tipe data tertentu.
Contoh sederhana:
| id | nama | usia | tgl_lahir |
|---|---|---|---|
| 1 | Andi | 21 | 2004-03-01 |
π§© Tipe Data Umum di SQL Server
| Jenis | Tipe Data | Contoh |
|---|---|---|
| Angka | INT, BIGINT, DECIMAL(10,2), FLOAT | 10, 12000.50 |
| Teks | CHAR(n), VARCHAR(n), NVARCHAR(n) | 'Andi', 'Jl. Merdeka' |
| Tanggal/Waktu | DATE, DATETIME, SMALLDATETIME | '2025-10-20' |
| Logika | BIT | 1 (true), 0 (false) |
| Lainnya | UNIQUEIDENTIFIER, IMAGE, VARBINARY | β |
π‘ Tips: Gunakan tipe data sekecil mungkin yang masih cukup menampung data β agar database lebih efisien.
βοΈ Membuat, Mengubah, dan Menghapus Tabel
πΉ Membuat Tabel
Gunakan perintah CREATE TABLE untuk membuat tabel baru.
1 | CREATE TABLE siswa ( |
πΉ Mengubah Struktur Tabel
Menambahkan kolom baru:
1 | ALTER TABLE siswa |
Mengubah tipe data kolom:
1 | ALTER TABLE siswa |
Menghapus kolom:
1 | ALTER TABLE siswa |
πΉ Menghapus Tabel
1 | DROP TABLE siswa; |
β οΈ Hati-hati! Setelah DROP TABLE, semua data di tabel tersebut akan hilang.
π Mengenal Constraint (Aturan Data)
Constraint adalah aturan yang membatasi isi tabel agar data tetap valid dan konsisten.
| Jenis Constraint | Fungsi | Contoh |
|---|---|---|
PRIMARY KEY | Menandai kolom unik dan tidak boleh kosong | id_siswa |
FOREIGN KEY | Menghubungkan dua tabel (relasi) | id_kelas di tabel siswa merujuk ke tabel kelas |
UNIQUE | Nilai kolom tidak boleh sama | email |
CHECK | Membatasi nilai berdasarkan kondisi | umur >= 18 |
DEFAULT | Memberi nilai otomatis jika kosong | DEFAULT 0 |
NOT NULL | Kolom tidak boleh kosong | nama |
Contoh Lengkap
1 | CREATE TABLE kelas ( |
Menghapus Constraint
Gunakan ALTER TABLE diikuti nama constraint (biasanya auto-generated).
Untuk mencari nama constraint:
1 | EXEC sp_helpconstraint 'siswa'; |
Lalu hapus:1
ALTER TABLE siswa DROP CONSTRAINT FK__siswa__id_kelas;
π§βπ» LATIHAN 1
πΈ Langkah 1
Buat database baru bernama db_sekolah.
1 | CREATE DATABASE db_sekolah; |
πΈ Langkah 2
Buat dua tabel:
kelasdengan kolomid_kelas,nama_kelas,kapasitassiswadengan kolomid_siswa,nama,umur,id_kelas,tanggal_daftar
Gunakan constraint seperti PRIMARY KEY, FOREIGN KEY, DEFAULT, dan CHECK.
πΈ Langkah 3
Tambahkan minimal 5 data ke masing-masing tabel.
πΈ Langkah 4
Gunakan query SELECT untuk memastikan relasi antar tabel berjalan benar.
π§© LATIHAN 2
Estimasi waktu: Β±1,5 jam
- Buat database dengan nama
db_<nama>
Contoh:db_Budi - Buat minimal 3 tabel dengan relasi antar tabel (gunakan
FOREIGN KEY). - Terapkan minimal 4 jenis constraint berbeda (
PRIMARY KEY,UNIQUE,CHECK,DEFAULT, dll). - Isi dengan minimal 5 data per tabel.
- Tampilkan hasil dengan
SELECTdan screenshot hasilnya.
πΎ Kumpulkan file SQL dengan nama:Pertemuan2_Nama.sql
π‘ Tantangan (Opsional)
- Coba ubah tipe data kolom tanpa menghapus tabel (
ALTER COLUMN). - Tambahkan constraint baru (
ADD CONSTRAINT) setelah tabel dibuat. - Gunakan
CHECKconstraint untuk membatasi nilai gaji antara 3.000.000 dan 20.000.000.
π Refleksi
- Apa perbedaan antara
PRIMARY KEYdanUNIQUE? - Kapan kita perlu menggunakan
DEFAULT? - Mengapa
FOREIGN KEYpenting dalam menjaga konsistensi data?
π Referensi Tambahan
- Microsoft Docs: CREATE TABLE (Transact-SQL)
- W3Schools: SQL Constraints
- Tutorialspoint: SQL Server - Constraints




