Files
rltn/run-simple-migration.js

55 lines
2.1 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-simple-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_simple.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);
// Проверяем количество записей
const { rows: countRows } = await db.query('SELECT COUNT(*) as count FROM city_objects');
console.log(`\n📈 Количество записей в таблице: ${countRows[0].count}`);
} catch (error) {
console.error('❌ Ошибка при выполнении миграции:', error);
process.exit(1);
} finally {
// Закрываем соединение с БД
await db.end();
console.log('🔌 Соединение с базой данных закрыто');
}
}
// Запускаем миграцию
runMigration();