Commit 034884ab authored by wycers's avatar wycers
Browse files

smart db connection

parent 206f8da4
Loading
Loading
Loading
Loading
+22 −5
Original line number Diff line number Diff line
import { dev } from '$app/environment';
import { DATABASE_URL } from '$env/static/private';
import * as schema from '$lib/drizzle/schema';

import { drizzle } from 'drizzle-orm/mysql2';
import { drizzle, type MySql2Database } from 'drizzle-orm/mysql2';
import mysql from 'mysql2/promise';

let db: MySql2Database<typeof schema>;

declare global {
	var __db: MySql2Database<typeof schema> | undefined;
}

if (dev) {
	const connection = await mysql.createConnection({
		uri: DATABASE_URL
	});

export const db = drizzle(connection, { schema, mode: 'default' });
	db = drizzle(connection, { schema, mode: 'default' });
} else {
	if (!global.__db) {
		const connection = await mysql.createConnection({
			uri: DATABASE_URL
		});
		global.__db = drizzle(connection, { schema, mode: 'default' });
	}
	db = global.__db;
}
export { db };