const fs = require('fs'); const path = require('path'); const mysql = require('mysql2/promise'); const dotenv = require('dotenv'); dotenv.config({ path: path.join(__dirname, '../.env') }); const dbConfig = { host: process.env.DB_HOST, user: process.env.DB_USER, password: process.env.DB_PASSWORD, database: process.env.DB_NAME, multipleStatements: true }; async function setupDatabase() { const connection = await mysql.createConnection(dbConfig); try { // Create tables console.log('Setting up database schema...'); const schemaSQL = fs.readFileSync(path.join(__dirname, '../db/schema.sql'), 'utf8'); await connection.query(schemaSQL); console.log('Schema created successfully'); // Create stored procedures console.log('Setting up stored procedures...'); const proceduresSQL = fs.readFileSync(path.join(__dirname, '../db/procedures.sql'), 'utf8'); await connection.query(proceduresSQL); console.log('Stored procedures created successfully'); console.log('Database setup completed successfully'); } catch (error) { console.error('Error setting up database:', error); process.exit(1); } finally { await connection.end(); } } setupDatabase();