12 lines
841 B
JavaScript
12 lines
841 B
JavaScript
import Database from 'better-sqlite3';
|
|
import fs from 'fs';
|
|
|
|
const sqlite = new Database(process.env.SQLITE_DB_PATH || './cms.db', { readonly: true });
|
|
const output = process.env.SQLITE_EXPORT_PATH || './sqlite-export.json';
|
|
const tables = ['global_config', 'home_sections', 'site_texts', 'ameba_page', 'experts', 'evolution_thought', 'four_values', 'amb_states', 'evolution_process', 'ten_systems', 'services', 'cases', 'articles', 'self_check', 'diagnosis_questions', 'diagnosis_sessions', 'diagnosis_reports', 'diagnosis_leads', 'contact_leads', 'diagnosis_config', 'admins'];
|
|
const data = {};
|
|
for (const table of tables) { try { data[table] = sqlite.prepare(`SELECT * FROM ${table}`).all(); } catch { data[table] = []; } }
|
|
fs.writeFileSync(output, JSON.stringify(data));
|
|
sqlite.close();
|
|
console.log(`SQLite export complete: ${output}`);
|