31 lines
1.1 KiB
SQL
31 lines
1.1 KiB
SQL
-- Migration: Update settings table for large data storage
|
|
-- Date: 2026-01-22
|
|
-- Purpose: Allow storing Logo and KOP images (base64) in the settings table
|
|
|
|
-- Change setting_value column type from TEXT to LONGTEXT
|
|
-- TEXT can store up to ~65KB, LONGTEXT can store up to ~4GB
|
|
-- This is needed because base64 encoded images can be several MB
|
|
|
|
ALTER TABLE settings
|
|
MODIFY COLUMN setting_value LONGTEXT;
|
|
|
|
-- Add index for faster lookups by setting_key
|
|
-- (setting_key should already be primary key, but just in case)
|
|
|
|
-- Insert default settings if they don't exist
|
|
INSERT IGNORE INTO settings (setting_key, setting_value) VALUES
|
|
('kepala_sekolah_name', ''),
|
|
('kepala_sekolah_nip', ''),
|
|
('ketua_komite_name', ''),
|
|
('komite_logo', '/logo.png'),
|
|
('komite_kop', '/kop_komite.png');
|
|
|
|
-- Show current settings
|
|
SELECT setting_key,
|
|
CASE
|
|
WHEN LENGTH(setting_value) > 100 THEN CONCAT(LEFT(setting_value, 50), '... [', LENGTH(setting_value), ' chars]')
|
|
ELSE setting_value
|
|
END as setting_value_preview,
|
|
updated_at
|
|
FROM settings;
|