Files
rltn/run-city-objects-migration.js

51 lines
1.8 KiB
JavaScript
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

#!/usr/bin/env node
/**
* Скрипт для создания таблицы city_objects
* Запуск: node run-city-objects-migration.js
*/
const fs = require('fs');
const path = require('path');
const db = require('./db');
async function runMigration() {
try {
console.log('🚀 Запуск миграции для создания таблицы city_objects...');
// Читаем SQL файл миграции
const migrationPath = path.join(__dirname, 'migrations', 'create_city_objects_table.sql');
const migrationSQL = fs.readFileSync(migrationPath, 'utf8');
console.log('📄 Загружен файл миграции:', migrationPath);
// Выполняем миграцию
await db.query(migrationSQL);
console.log('✅ Миграция успешно выполнена!');
console.log('📊 Таблица city_objects создана со всеми необходимыми индексами и триггерами');
// Проверяем, что таблица создалась
const { rows } = await db.query(`
SELECT table_name, column_name, data_type, is_nullable, column_default
FROM information_schema.columns
WHERE table_name = 'city_objects'
ORDER BY ordinal_position
`);
console.log('\n📋 Структура созданной таблицы:');
console.table(rows);
} catch (error) {
console.error('❌ Ошибка при выполнении миграции:', error);
process.exit(1);
} finally {
// Закрываем соединение с БД
await db.end();
console.log('🔌 Соединение с базой данных закрыто');
}
}
// Запускаем миграцию
runMigration();