47 lines
3.0 KiB
SQL
47 lines
3.0 KiB
SQL
-- ============================================================
|
||
-- WebGIS Pemetaan Kemiskinan Berbasis Partisipasi Rumah Ibadah
|
||
-- Studi Kasus: Masjid di Kota Pontianak
|
||
-- Schema Versi 1.0 – sesuai SRS_CONTEXT.md Bab 5.4
|
||
-- ============================================================
|
||
|
||
CREATE DATABASE IF NOT EXISTS webgis_kemiskinan
|
||
CHARACTER SET utf8mb4
|
||
COLLATE utf8mb4_unicode_ci;
|
||
|
||
USE webgis_kemiskinan;
|
||
|
||
-- ── Tabel: kemiskinan ─────────────────────────────────────────
|
||
-- Menyimpan data spasial lokasi dan atribut keluarga miskin.
|
||
-- Koordinat menggunakan WGS84 (EPSG:4326).
|
||
CREATE TABLE IF NOT EXISTS kemiskinan (
|
||
id INT AUTO_INCREMENT PRIMARY KEY,
|
||
nama_kepala_keluarga VARCHAR(255) NOT NULL COMMENT 'Nama kepala keluarga miskin',
|
||
jumlah_kk INT NOT NULL COMMENT 'Jumlah anggota keluarga, angka bulat positif',
|
||
alamat TEXT NOT NULL COMMENT 'Alamat lengkap tempat tinggal',
|
||
latitude DECIMAL(10,8) NOT NULL COMMENT 'Koordinat lintang WGS84, range -90 s.d. +90',
|
||
longitude DECIMAL(11,8) NOT NULL COMMENT 'Koordinat bujur WGS84, range -180 s.d. +180',
|
||
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP COMMENT 'Waktu pencatatan data'
|
||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
|
||
|
||
-- ── Tabel: masjid ─────────────────────────────────────────────
|
||
-- Menyimpan data spasial lokasi masjid beserta radius layanan sosial.
|
||
-- Radius (meter) digunakan sebagai parameter visualisasi L.circle di Leaflet.js.
|
||
CREATE TABLE IF NOT EXISTS masjid (
|
||
id INT AUTO_INCREMENT PRIMARY KEY,
|
||
nama_masjid VARCHAR(255) NOT NULL COMMENT 'Nama lengkap masjid',
|
||
pic_masjid VARCHAR(255) NOT NULL COMMENT 'Nama pengurus/penanggung jawab (PIC)',
|
||
alamat TEXT NOT NULL COMMENT 'Alamat lengkap masjid',
|
||
latitude DECIMAL(10,8) NOT NULL COMMENT 'Koordinat lintang WGS84',
|
||
longitude DECIMAL(11,8) NOT NULL COMMENT 'Koordinat bujur WGS84',
|
||
radius INT NOT NULL DEFAULT 500 COMMENT 'Radius layanan sosial dalam meter, range 100-5000',
|
||
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP COMMENT 'Waktu pencatatan data'
|
||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
|
||
|
||
-- ── Catatan ERD (SRS Bab 7.4) ─────────────────────────────────
|
||
-- Kedua tabel TIDAK memiliki foreign key.
|
||
-- Relasi logis antara masjid dan kemiskinan ditentukan secara spasial
|
||
-- (kalkulasi jarak vs radius) di layer peta Leaflet, bukan melalui
|
||
-- relasi database relasional. Ini merupakan desain yang disederhanakan
|
||
-- untuk versi 1.0. Versi lanjutan dapat mengimplementasikan tabel relasi
|
||
-- atau tipe spasial MySQL POINT/GEOMETRY.
|