Drizzle <> MSSQL

WARNING

本页讲解的概念适用于 Drizzle 版本 1.0.0-beta.2 及以上版本。


本指南假定您已熟悉:

Drizzle 原生支持基于 mssql 驱动的 MSSQL 连接。

第1步 - 安装包

npm
yarn
pnpm
bun
npm i drizzle-orm@beta mssql
npm i -D drizzle-kit@beta

第2步 - 初始化驱动并执行查询

mssql
带配置的 mssql
// 确保已安装 'mssql' 包
import { drizzle } from 'drizzle-orm/node-mssql';

const db = drizzle(process.env.DATABASE_URL);
 
const result = await db.execute('select 1');
IMPORTANT

由于 node-mssql 驱动在初始化 Pool 时需要 await,所以我们需要在每次请求前对其进行 await —— 除非你为 Drizzle 提供了自己的 Pool 实例。在这种情况下,当你想访问 db.$client 时,需要先 await 它,然后再使用它:

const awaitedClient = await db.$client;
const response = awaitedClient.query...

如果你需要提供你已有的驱动:

// 确保已安装 'mssql' 包
import { drizzle } from "drizzle-orm/node-mssql";
import type { ConnectionPool } from 'mssql';

const pool = await mssql.connect(connectionString);
const db = drizzle({ client: pool });
 
const result = await db.execute('select 1');

下一步?