/
TropanetsMR
/
ProjectAfisha
Обзор
Документация
Войти
/
TropanetsMR
/
ProjectAfisha
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
CI/CD
Аналитика
Безопасность
master
debug-sql-client.mjs
47 строк
1 KB
TropanetsMR
upload files
25 дек 2025, 06:03
25 дек 2025, 06:03
68b08da
Код
Авторство
О чём код?
// Точно такая же логика как в dbEvents.ts import { neon } from '@neondatabase/serverless' import { Pool } from 'pg' function makePgTagged(pool) { return async (query, values = []) => { console.log("PG Query:", query); console.log("PG Values:", values); const { rows } = await pool.query(query, values); return rows; }; } // Adaptive SQL client - Neon cloud vs local PostgreSQL const url = new URL(process.env.NEON_DATABASE_URL); console.log("URL hostname:", url.hostname); let sql; if (/neon\.tech$/i.test(url.hostname)) { console.log("Using Neon client"); sql = neon(process.env.NEON_DATABASE_URL); } else { console.log("Using PG client"); const pool = new Pool({ connectionString: process.env.NEON_DATABASE_URL }); sql = makePgTagged(pool); } console.log("SQL client type:", typeof sql); console.log("SQL client length:", sql.length); // Test query (async () => { try { const query = ` SELECT COUNT(*) as count FROM events e WHERE (e.status = $1 OR e.status = $2) `; const values = ['published', 'approved']; const result = await sql(query, values); console.log("Result:", result); } catch (error) { console.error("Error:", error); } })();