本教程演示如何使用 Drizzle ORM 结合 Vercel Postgres。Vercel Postgres 是一个无服务器 SQL 数据库,旨在与 Vercel Functions 和您的前端框架集成。
This guide assumes familiarity with:
- 您应该已安装
dotenv
包以管理环境变量。有关此包的更多信息,请阅读 这里
- 您应该已安装
@vercel/postgres
包。有关此包的更多信息,请阅读 这里
查看 Vercel 文档,了解如何使用 Drizzle ORM 连接到数据库。
设置 Vercel Postgres 和 Drizzle ORM
创建新的 Vercel Postgres 数据库
您可以在 控制面板 中创建新的 Vercel Postgres 数据库。
请查阅 Vercel Postgres 文档 以了解如何创建新的数据库。
设置连接字符串变量
导航至您的 Vercel Postgres 数据库并从 .env.local
部分复制 POSTGRES_URL
。
将 POSTGRES_URL
添加到您的 .env.local
或 .env
文件中。
将 Drizzle ORM 连接到您的数据库
在 src/db
目录中创建一个 index.ts
文件,并设置您的数据库配置:
创建表
在 src/db
目录中创建一个 schema.ts
文件,并声明您的表:
设置 Drizzle 配置文件
Drizzle 配置 - 这是由 Drizzle Kit 使用的配置文件,包含有关您的数据库连接、迁移文件夹和模式文件的所有信息。
在项目根目录中创建一个 drizzle.config.ts
文件,并添加以下内容:
将更改应用于数据库
您可以使用 drizzle-kit generate
命令生成迁移,然后使用 drizzle-kit migrate
命令运行它们。
生成迁移:
这些迁移存储在 drizzle/migrations
目录中,如您在 drizzle.config.ts
中指定的那样。该目录将包含更新您的数据库架构所需的 SQL 文件以及一个 meta
文件夹,用于存储不同迁移阶段的架构快照。
生成迁移的示例:
运行迁移:
或者,您可以使用 Drizzle kit push 命令 直接将更改推送到数据库:
IMPORTANT
Push 命令适用于需要快速测试新架构设计或在本地开发环境中进行更改的情况,允许快速迭代,而无需管理迁移文件的开销。
基本文件结构
这是项目的基本文件结构。在 src/db
目录中,我们有与数据库相关的文件,包括在 index.ts
中的连接和在 schema.ts
中的模式定义。
查询示例
例如,我们创建 src/db/queries
文件夹,并为每个操作分开文件:插入、选择、更新、删除。
插入数据
有关插入查询的更多信息,请参阅 文档。
选择数据
有关选择查询的更多信息,请参阅 文档。
或者,您可以使用 关系查询语法。
更新数据
有关更新查询的更多信息,请参阅 文档。
删除数据
有关删除查询的更多信息,请参阅 文档。