widgettdc-api / apps /backend /test-prisma.ts
Kraft102's picture
Update backend source
34367da verified
import { PrismaClient } from '@prisma/client';
const prisma = new PrismaClient();
async function main() {
try {
console.log('πŸ”„ Connecting to PostgreSQL...');
await prisma.$connect();
console.log('βœ… Connected to PostgreSQL');
// List tables
const tables = await prisma.$queryRaw<{tablename: string}[]>`
SELECT tablename FROM pg_tables WHERE schemaname = 'public'
`;
console.log('πŸ“‹ Tables:', tables.map(t => t.tablename).join(', '));
// Check pgvector extension
const extensions = await prisma.$queryRaw<{extname: string}[]>`
SELECT extname FROM pg_extension WHERE extname = 'vector'
`;
console.log('πŸ”’ pgvector:', extensions.length > 0 ? 'enabled βœ…' : 'not installed ❌');
// Try enabling pgvector if not present
if (extensions.length === 0) {
try {
await prisma.$executeRaw`CREATE EXTENSION IF NOT EXISTS vector`;
console.log('πŸ”’ pgvector: now enabled βœ…');
} catch (e: any) {
console.log('⚠️ Could not enable pgvector:', e.message);
}
}
await prisma.$disconnect();
console.log('βœ… Test completed successfully!');
} catch (e: any) {
console.error('❌ Error:', e.message);
process.exit(1);
}
}
main();