drizzle-kit export
This guide assumes familiarity with:
- 开始使用 Drizzle 和
drizzle-kit
- 阅读这里
- Drizzle 架构基础 - 阅读这里
- 数据库连接基础 - 阅读这里
- Drizzle 迁移基础 - 阅读这里
- Drizzle Kit 概述 和 配置文件
drizzle-kit export
让你导出 Drizzle 架构的 SQL 表示,并在控制台打印其 SQL DDL 表示。
Drizzle Kit export
命令触发一系列事件:
- 它将读取你的 Drizzle 架构文件并生成架构的 JSON 快照
- 基于 JSON 差异,它将生成 SQL DDL 语句
- 输出 SQL DDL 语句到控制台
它旨在覆盖 代码优先 的 Drizzle 迁移管理方法。
你可以导出 Drizzle 架构的 SQL 表示,允许像 Atlas 这样的外部工具为你处理所有迁移。
drizzle-kit export
命令要求你提供 dialect
和 schema
路径选项,
你可以通过 drizzle.config.ts 配置文件或通过 CLI 选项设置它们。
架构文件路径
你可以拥有一个 schema.ts
文件,或者根据需要在项目中分布多个架构文件。
Drizzle Kit 要求你通过 schema
配置选项指定文件路径,可以使用 glob 来指定路径。
Example 1
Example 2
Example 3
Example 4
一个项目中的多个配置文件
你可以在项目中使用多个配置文件,这在有多个数据库阶段或多个数据库,或同一项目中使用不同数据库时非常有用:
可用配置项的扩展列表
drizzle-kit export
有一个仅限 CLI 的选项列表
| |
---|
--sql | 生成 Drizzle 架构的 SQL 表示 |
默认情况下,Drizzle Kit 输出 SQL 文件,但未来我们希望支持不同的格式
我们推荐通过 drizzle.config.ts 文件配置 drizzle-kit
,
但如果需要,也可以通过 CLI 提供所有配置选项,例如在 CI/CD 管道中等。
| | |
---|
dialect | 必需 | 数据库方言,可选值见 postgresql mysql sqlite turso singlestore |
schema | 必需 | TypeScript 架构文件或包含多个架构文件的文件夹路径 |
config | | 配置文件路径,默认是 drizzle.config.ts |
示例
如何将 Drizzle 架构导出到控制台,Drizzle 架构位于 ./src/schema.ts
我们还将把 Drizzle 配置文件放在 configs
文件夹中。
让我们创建配置文件:
现在让我们运行:
它将成功输出 Drizzle 架构的 SQL 表示: