Files
whatsapp/run_migration.php
T

52 lines
1.4 KiB
PHP

<?php
/**
* Script temporal para ejecutar migración de base de datos
*/
require_once __DIR__ . '/config/config.php';
try {
$db = Database::getInstance();
$sqlFile = __DIR__ . '/database/02_add_template_components.sql';
if (!file_exists($sqlFile)) {
die("❌ Archivo no encontrado: $sqlFile\n");
}
$sql = file_get_contents($sqlFile);
// Dividir en sentencias individuales
$statements = array_filter(array_map('trim', explode(';', $sql)));
echo "🚀 Ejecutando migración...\n\n";
foreach ($statements as $stmt) {
// Saltar comentarios y líneas vacías
if (empty($stmt) || preg_match('/^--/', $stmt)) {
continue;
}
try {
$db->execute($stmt);
$preview = substr(preg_replace('/\s+/', ' ', $stmt), 0, 80);
echo "✓ Ejecutado: {$preview}...\n";
} catch (Exception $e) {
echo "✗ Error: " . $e->getMessage() . "\n";
echo " SQL: " . substr($stmt, 0, 100) . "...\n";
}
}
echo "\n✅ Migración completada\n\n";
// Verificar columnas agregadas
echo "📋 Verificando columnas de message_templates:\n";
$cols = $db->fetchAll('DESCRIBE message_templates');
foreach ($cols as $col) {
echo " - {$col['Field']} ({$col['Type']})\n";
}
} catch (Exception $e) {
echo "❌ Error fatal: " . $e->getMessage() . "\n";
exit(1);
}