Drizzle <> Neon Postgres

This guide assumes familiarity with:

Drizzle은 neon-httpneon-websockets 드라이버를 통해 Neon 연결을 네이티브로 지원합니다. 이 드라이버들은 내부적으로 neon-serverless 드라이버를 사용합니다.

neon-httpneon-websockets 드라이버를 사용하면 TCP 대신 HTTP 또는 WebSocket을 통해 서버리스 환경에서 Neon 데이터베이스에 접근할 수 있습니다. HTTP를 통한 쿼리는 단일, 비대화형 트랜잭션에 더 빠릅니다.

세션 또는 대화형 트랜잭션 지원이 필요하거나, pg 드라이버의 완전 호환 대체재가 필요한 경우 WebSocket 기반 neon-serverless 드라이버를 사용할 수 있습니다. Postgres를 사용하여 Neon 데이터베이스에 직접 연결할 수도 있습니다.

Cloudflare Worker에서 Neon Serverless 드라이버와 함께 Drizzle ORM을 사용하는 예제는 **여기**를 참조하세요. 서버풀(serverful) 환경에서 Neon을 사용하려면 Neon의 **공식 Node.js 문서**에 설명된 대로 PostgresJS 드라이버를 사용할 수 있습니다 — 문서 참조.

Step 1 - 패키지 설치

npm
yarn
pnpm
bun
npm i drizzle-orm @neondatabase/serverless
npm i -D drizzle-kit

Step 2 - 드라이버 초기화 및 쿼리 실행

Neon HTTP
Neon Websockets
node-postgres
postgres.js
import { drizzle } from 'drizzle-orm/neon-http';

const db = drizzle(process.env.DATABASE_URL);

const result = await db.execute('select 1');

기존 드라이버를 제공해야 하는 경우:

Neon HTTP
Neon Websockets
node-postgres
postgres.js
import { neon } from '@neondatabase/serverless';
import { drizzle } from 'drizzle-orm/neon-http';

const sql = neon(process.env.DATABASE_URL!);
const db = drizzle({ client: sql });

const result = await db.execute('select 1');

다음 단계