WorkshopTasker/server/utils/database.ts

19 lines
746 B
TypeScript

import mysql, { type Connection } from "mysql2/promise";
const connectionOptions: mysql.ConnectionOptions = {
host: process.env.DB_HOST,
port: Number(process.env.DB_PORT),
user: process.env.DB_USER,
password: process.env.DB_PASSWORD,
database: process.env.DB_SCHEMA,
decimalNumbers: true,
supportBigNumbers: true,
};
export const database =
await mysql.createConnection(connectionOptions) as Connection & {
new: (localConnectionOptions?: mysql.ConnectionOptions | undefined) => Promise<Connection>
};
database.new = (localConnectionOptions?: mysql.ConnectionOptions | undefined) => { return mysql.createConnection({ ...localConnectionOptions, ...connectionOptions }); };
export type data<T> = [T[], mysql.FieldPacket[]];