Tampilan
Pertemuan 16: DBMS, SQL, dan UAS
Tujuan pembelajaran
Setelah pertemuan ini, Anda mampu:
- menjelaskan cara kerja DBMS berbasis server;
- mengenal SQL dan membaca perintah dasarnya;
- menyebutkan beberapa DBMS populer;
- menyajikan proyek akhir yang merangkum seluruh materi.
Peta materi
1. Bagaimana cara membuat basis data sungguhan?
Cara paling sederhana adalah memakai aplikasi spreadsheet (Excel, Google Sheets). Cukup untuk data kecil yang dipakai satu orang.
Namun spreadsheet punya batas:
- hanya cocok untuk data tidak terlalu besar;
- hanya dipakai oleh pengguna manusia, tidak oleh web atau aplikasi lain secara otomatis.
Untuk data besar yang diakses banyak pengguna, termasuk aplikasi lain, kita butuh DBMS berbasis server.
2. DBMS berbasis server
Aplikasi ini tugasnya hanya melayani permintaan klien.
Analogi restoran
Klien (aplikasi web atau aplikasi lain) adalah pelanggan yang memesan. DBMS adalah pelayan yang menerima pesanan, mengambil dari dapur (basis data), lalu mengantarkan hasilnya.
Aplikasi DBMS jenis server biasanya tidak punya tampilan antarmuka. Karena itu kita berinteraksi dengan bahasa instruksi yang dipahaminya.
3. SQL
SQL (Structured Query Language) adalah bahasa instruksi basis data yang paling populer. SQL memuat dua jenis perintah yang sudah Anda kenal di Pertemuan 2:
- DDL: membuat struktur basis data.
- DML: mengelola isi data.
Berikut gambaran implementasi ERD Toko Online kita. Ini sekadar pengenalan. Pendalaman ada pada materi MySQL atau PostgreSQL.
sql
-- DDL: membuat struktur
CREATE TABLE pembeli (
email VARCHAR(100) PRIMARY KEY,
nama VARCHAR(100) NOT NULL,
alamat VARCHAR(255)
);
CREATE TABLE barang (
sku VARCHAR(20) PRIMARY KEY,
nama VARCHAR(100) NOT NULL,
harga INT NOT NULL,
berat INT
);
CREATE TABLE membeli (
email_pembeli VARCHAR(100),
sku_barang VARCHAR(20),
jumlah INT NOT NULL,
PRIMARY KEY (email_pembeli, sku_barang),
FOREIGN KEY (email_pembeli) REFERENCES pembeli(email),
FOREIGN KEY (sku_barang) REFERENCES barang(sku)
);
-- DML: mengelola data
INSERT INTO pembeli (email, nama) VALUES ('budi@mail.com', 'Budi');
INSERT INTO barang (sku, nama, harga) VALUES ('BRG001', 'Sepatu Lari', 350000);
INSERT INTO membeli VALUES ('budi@mail.com', 'BRG001', 1);
SELECT * FROM membeli;Bagaimana ERD kita muncul di SQL?
| Konsep di ERD | Terlihat di SQL |
|---|---|
| Entity | CREATE TABLE ... |
| Attribute | Nama kolom di dalam tabel |
| Tipe data (kamus data) | VARCHAR, INT |
| Primary key | PRIMARY KEY |
| Foreign key | FOREIGN KEY ... REFERENCES ... |
| Tabel relasi many to many | Tabel membeli dengan dua foreign key |
Sesuaikan dengan DBMS
Untuk belajar SQL, pilih satu DBMS, biasanya disesuaikan dengan tempat Anda bekerja, karena tiap perusahaan umumnya sudah memilih DBMS-nya sendiri.
4. Contoh aplikasi DBMS
| DBMS | Keterangan | Biaya |
|---|---|---|
| MySQL | Populer, open source, banyak dipakai website | Gratis |
| PostgreSQL | Banyak dipakai perusahaan besar | Gratis |
| Oracle | Banyak dipakai korporasi, terutama bank | Berbayar |
| SQL Server | Dipakai perusahaan yang memakai teknologi Microsoft | Berbayar |
5. Rangkuman perjalanan 16 pertemuan
6. Proyek akhir dan UAS
Kerja kelompok 3-4 orang. Pilih satu ruang lingkup (apotek, kos-kosan, klinik, kampus, bengkel, atau lainnya), lalu kumpulkan:
- Deskripsi ruang lingkup dan aturan bisnis (satu halaman).
- ERD lengkap: minimal 4 entity dengan key, atribut, relationship, dan kardinalitas. Sertakan minimal satu pola khusus dari Pertemuan 9.
- Daftar tabel hasil implementasi beserta kamus data.
- Contoh normalisasi dari satu laporan: dari bentuk tidak normal sampai 3NF.
- Satu usulan denormalisasi beserta alasan dan risikonya.
- Presentasi 10 menit dan tanya jawab.
Contoh rubrik
| Komponen | Bobot |
|---|---|
| ERD dan kardinalitas | 30% |
| Implementasi tabel dan kamus data | 20% |
| Normalisasi | 25% |
| Denormalisasi | 10% |
| Presentasi dan kerja sama | 15% |
Daftar periksa sebelum mengumpulkan
- Setiap entity punya primary key
- Setiap relasi many to many sudah menjadi tabel relasi
- Tidak ada kolom multi-value atau atribut turunan pada tabel akhir (kecuali dari denormalisasi yang disengaja)
- Tidak ada kolom non-key yang tidak bergantung pada key tabelnya
- Setiap keputusan punya alasan tertulis
Kuis cepat
1. Spreadsheet kurang cocok sebagai basis data utama aplikasi web karena...
2. DBMS berbasis server biasanya...
3. SQL kepanjangan dari...
4. Perintah CREATE TABLE termasuk...
5. DBMS open source dan gratis yang disebut pada materi adalah...
Terjawab 0 dari 5 soal
Rangkuman
Yang harus diingat
- Spreadsheet untuk data kecil; DBMS berbasis server untuk data besar dan aplikasi lain.
- Server melayani permintaan klien lewat SQL, yang memuat DDL dan DML.
- DBMS populer: MySQL, PostgreSQL (gratis), Oracle, SQL Server (berbayar).
- Alur belajar: model data, tabel, normalisasi, denormalisasi, SQL.
Selanjutnya
Anda sudah punya fondasi yang kuat. Langkah berikutnya adalah praktik langsung:
- Belajar MySQL
- Belajar PostgreSQL
Progres tersimpan di browser Anda dan tampil di halaman beranda.