Ensure database schema on app startup

This commit is contained in:
2026-06-10 23:00:39 +07:00
parent d94edcda98
commit 14f7425dff
4 changed files with 74 additions and 9 deletions
+7 -8
View File
@@ -1,8 +1,7 @@
DROP DATABASE IF EXISTS webgis_miskin;
CREATE DATABASE webgis_miskin CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
CREATE DATABASE IF NOT EXISTS webgis_miskin CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
USE webgis_miskin;
CREATE TABLE admins (
CREATE TABLE IF NOT EXISTS admins (
id INT AUTO_INCREMENT PRIMARY KEY,
username VARCHAR(50) NOT NULL UNIQUE,
password_hash VARCHAR(255) NOT NULL,
@@ -11,10 +10,10 @@ CREATE TABLE admins (
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP
) ENGINE=InnoDB;
INSERT INTO admins (username, password_hash, nama) VALUES
INSERT IGNORE INTO admins (username, password_hash, nama) VALUES
('admin', '$2y$10$7O061pVz/aZ5YNK/fQyYIePIPnzDb.uZn38pC/Te3s7gRyko20dIK', 'Administrator');
CREATE TABLE rumah_ibadah (
CREATE TABLE IF NOT EXISTS rumah_ibadah (
id INT AUTO_INCREMENT PRIMARY KEY,
nama VARCHAR(150) NOT NULL,
jenis ENUM('Masjid', 'Gereja', 'Pura', 'Vihara', 'Klenteng', 'Lainnya') NOT NULL,
@@ -26,7 +25,7 @@ CREATE TABLE rumah_ibadah (
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP
) ENGINE=InnoDB;
CREATE TABLE penduduk_miskin (
CREATE TABLE IF NOT EXISTS penduduk_miskin (
id INT AUTO_INCREMENT PRIMARY KEY,
kk_nama VARCHAR(150) NOT NULL,
kk_nik VARCHAR(20),
@@ -52,7 +51,7 @@ CREATE TABLE penduduk_miskin (
FOREIGN KEY (ibadah_id) REFERENCES rumah_ibadah(id) ON DELETE SET NULL
) ENGINE=InnoDB;
CREATE TABLE anggota_keluarga (
CREATE TABLE IF NOT EXISTS anggota_keluarga (
id INT AUTO_INCREMENT PRIMARY KEY,
penduduk_id INT NOT NULL,
nama VARCHAR(150) NOT NULL,
@@ -62,7 +61,7 @@ CREATE TABLE anggota_keluarga (
FOREIGN KEY (penduduk_id) REFERENCES penduduk_miskin(id) ON DELETE CASCADE
) ENGINE=InnoDB;
CREATE TABLE riwayat_bantuan (
CREATE TABLE IF NOT EXISTS riwayat_bantuan (
id INT AUTO_INCREMENT PRIMARY KEY,
penduduk_id INT NOT NULL,
jenis_bantuan VARCHAR(120) NOT NULL,