first commit
This commit is contained in:
+53
@@ -0,0 +1,53 @@
|
||||
-- ============================================================
|
||||
-- Schema Database WebGIS SPBU Pontianak
|
||||
-- Jalankan sekali untuk membuat database & tabel secara manual
|
||||
-- (Opsional — server.js sudah auto-create tabel saat start)
|
||||
-- ============================================================
|
||||
|
||||
CREATE DATABASE IF NOT EXISTS spbu_pontianak
|
||||
CHARACTER SET utf8mb4
|
||||
COLLATE utf8mb4_unicode_ci;
|
||||
|
||||
USE spbu_pontianak;
|
||||
|
||||
-- ── Tabel SPBU ──────────────────────────────────────────────
|
||||
CREATE TABLE IF NOT EXISTS spbu (
|
||||
id INT AUTO_INCREMENT PRIMARY KEY,
|
||||
kode VARCHAR(20) NOT NULL UNIQUE COMMENT 'Kode unik SPBU, mis: 64.781.01',
|
||||
nama VARCHAR(100) NOT NULL,
|
||||
alamat TEXT NOT NULL,
|
||||
lat DOUBLE NOT NULL COMMENT 'Latitude (desimal)',
|
||||
lng DOUBLE NOT NULL COMMENT 'Longitude (desimal)',
|
||||
jam_buka TIME NOT NULL DEFAULT '06:00' COMMENT 'Format HH:MM',
|
||||
jam_tutup TIME NOT NULL DEFAULT '22:00' COMMENT 'Format HH:MM',
|
||||
jenis_bbm JSON NOT NULL COMMENT 'Array jenis BBM, contoh: ["Pertalite","Pertamax"]',
|
||||
manual_override ENUM('auto','open','closed') NOT NULL DEFAULT 'auto',
|
||||
aktif TINYINT(1) NOT NULL DEFAULT 1 COMMENT '1=aktif, 0=dihapus (soft delete)',
|
||||
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
|
||||
updated_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
|
||||
|
||||
-- ── Tabel Jalan ─────────────────────────────────────────────
|
||||
CREATE TABLE IF NOT EXISTS jalan (
|
||||
id INT AUTO_INCREMENT PRIMARY KEY,
|
||||
nama_jalan VARCHAR(150) NOT NULL COMMENT 'Nama jalan, mis: Jl. Ahmad Yani',
|
||||
jenis_jalan ENUM('nasional','provinsi','kota_kabupaten') NOT NULL DEFAULT 'kota_kabupaten'
|
||||
COMMENT 'Klasifikasi jalan',
|
||||
koordinat LONGTEXT NOT NULL COMMENT 'GeoJSON LineString koordinat polyline',
|
||||
aktif TINYINT(1) NOT NULL DEFAULT 1 COMMENT '1=aktif, 0=dihapus (soft delete)',
|
||||
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
|
||||
updated_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
|
||||
|
||||
-- ── Tabel Bangunan ──────────────────────────────────────────
|
||||
CREATE TABLE IF NOT EXISTS bangunan (
|
||||
id INT AUTO_INCREMENT PRIMARY KEY,
|
||||
nama_bangunan VARCHAR(150) NOT NULL COMMENT 'Nama bangunan atau kavling',
|
||||
jenis_bangunan ENUM('SHM','HGB','HGU','HP','HPL') NOT NULL DEFAULT 'SHM'
|
||||
COMMENT 'SHM=Sertifikat Hak Milik, HGB=Hak Guna Bangunan, HGU=Hak Guna Usaha, HP=Hak Pakai, HPL=Hak Pengelolaan',
|
||||
nama_jalan VARCHAR(150) COMMENT 'Nama jalan lokasi bangunan',
|
||||
koordinat LONGTEXT NOT NULL COMMENT 'GeoJSON Polygon koordinat area bangunan',
|
||||
aktif TINYINT(1) NOT NULL DEFAULT 1 COMMENT '1=aktif, 0=dihapus (soft delete)',
|
||||
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
|
||||
updated_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
|
||||
Reference in New Issue
Block a user