18 lines
725 B
TypeScript
18 lines
725 B
TypeScript
import { drizzle as drizzlePostgres } from 'drizzle-orm/node-postgres'
|
|
import { drizzle as drizzleSqlite } from 'drizzle-orm/bun-sqlite'
|
|
import { Pool } from 'pg'
|
|
import { Database } from 'bun:sqlite'
|
|
import * as postgresSchema from '../../../backend/src/db/schema-postgres'
|
|
import * as sqliteSchema from '../../../backend/src/db/schema-sqlite'
|
|
|
|
export const createPostgresDb = (connectionString: string) => {
|
|
const pool = new Pool({ connectionString })
|
|
const db = drizzlePostgres(pool, { schema: postgresSchema })
|
|
return { db, pool }
|
|
}
|
|
|
|
export const createSqliteDb = (filePath: string) => {
|
|
const sqlite = new Database(filePath)
|
|
const db = drizzleSqlite(sqlite, { schema: sqliteSchema })
|
|
return { db, sqlite }
|
|
}
|