From 8de6fc00527c414b4a13adc2600ccbb1e0c43e53 Mon Sep 17 00:00:00 2001 From: Misaka_Company Date: Thu, 4 Jun 2026 09:36:11 +0800 Subject: [PATCH] feat: add SQL Server connection pool utility Co-Authored-By: Claude Opus 4.6 --- lib/db.ts | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) create mode 100644 lib/db.ts diff --git a/lib/db.ts b/lib/db.ts new file mode 100644 index 0000000..ba9a0d3 --- /dev/null +++ b/lib/db.ts @@ -0,0 +1,22 @@ +import sql from "mssql"; + +const dbConfig: sql.config = { + server: process.env.DB_SERVER!, + port: Number(process.env.DB_PORT) || 1433, + database: process.env.DB_DATABASE!, + user: process.env.DB_USER!, + password: process.env.DB_PASSWORD!, + options: { + encrypt: false, + trustServerCertificate: true, + enableArithAbort: true, + }, +}; + +let pool: sql.ConnectionPool | null = null; + +export async function getPool(): Promise { + if (pool && pool.connected) return pool; + pool = await sql.connect(dbConfig); + return pool; +}