@ariga/atlas-provider-sequelize

中文文档
0.3.5发布于 2026/02/10ISC构建来源已验证近 30 天下载 1884

将模型装入Atlas项目.

中文使用文档
文档目录6 节
  1. 使用大小写
  2. 安装
  3. 使用量
  4. 支持的数据库
  5. 问题
  6. 许可证

地图集提供者-序列

装入 排序 模型变成 Atlas 项目.

使用大小写

  1. 申报移徙 - 使用类似地表形 atlas schema apply --env sequelize 将您的系统化计划应用到数据库中.
  2. 自动移徙规划 - 使用时 atlas migrate diff --env sequelize 来自动规划从当前数据库版本到Sequelize schema的迁移.

安装

通过运行从 macOS 或 Linux 安装 Atlas :

curl -sSf https://atlasgo.sh | sh

见 地图集.io 用于更多的安装选项.

通过运行安装提供者 :

npm i @ariga/atlas-provider-sequelize

通过运行确定您的所有节点依赖性 :

npm i

独立

如果你所有的序列模型 在一个单一的节点模块中存在, 您可以使用提供者直接将您的系统化计划加载到 Atlas.

在您的工程目录中创建新文件 atlas.hcl 内容如下:

data "external_schema" "sequelize" {
  program = [
    "npx",
    "@ariga/atlas-provider-sequelize",
    "load",
    "--path", "./path/to/models",
    "--dialect", "mysql", // mariadb | postgres | sqlite | mssql
  ]
}

env "sequelize" {
  src = data.external_schema.sequelize.url
  dev = "docker://mysql/8/dev"
  migration {
    dir = "file://migrations"
  }
  format {
    migrate {
      diff = "{{ sql . \"  \" }}"
    }
  }
}

作为联署文件

如果要使用提供者作为JS脚本,可以使用提供者如下:

创建名为新文件 load.js 内容如下:

#!/usr/bin/env node

// require sequelize models you want to load
const user = require("./models/user");
const task = require("./models/task");
const loadModels = require("@ariga/atlas-provider-sequelize");

console.log(loadModels("mysql", user, task));

下一步, 在您的工程目录中创建一个新文件 atlas.hcl 内容如下:

data "external_schema" "sequelize" {
    program = [
        "node",
        "load.js",
    ]
}

env "sequelize" {
    src = data.external_schema.sequelize.url
    dev = "docker://mysql/8/dev"
    migration {
        dir = "file://migrations"
    }
    format {
        migrate {
            diff = "{{ sql . \"  \" }}"
        }
    }
}

使用量

一旦安装了提供者,您就可以使用它来将您的系统化计划应用到数据库中:

应用

你可以用这个 atlas schema apply 命令来规划和应用数据库的迁移到 您的当前序列计划。 检查目标数据库并将其与目标数据库进行比较 整理出计划,制定移民计划。 阿特拉斯会促使你确认迁移计划 在将其应用到数据库之前.

atlas schema apply --env sequelize -u "mysql://root:password@localhost:3306/mydb"

这里 -u 旗帜接受 網址 页:1 目标数据库.

抖动

Atlas支持a 版本迁移 工作流程,其中对数据库的每次更改都会被版本并记录在迁移文件中. 你可以用这个 atlas migrate diff 命令以自动生成将迁移数据库的迁移文件 从最新修订到目前的系统化计划.

atlas migrate diff --env sequelize

支持的数据库

提供者支持下列数据库:

  • MySQL 数据
  • 马里亚DB
  • 邮递SQL
  • SQL 点
  • 微软 SQL 服务器

问题

请报告本报告中的任何问题或特征要求 阿里加/阿特拉斯 仓库.

许可证

本项目根据以下规定获得许可证: Apache 许可证 2.0。 。 。 .

版本与发布记录

@ariga/atlas-provider-sequelize 共发布 20 个版本,首次发布于 2023/09/10;过去 12 个月发布了 2 个版本。最新版本附带 npm provenance 构建来源证明,可追溯到公开的 CI 构建记录。

版本发布日期距今
0.3.5latest2026/02/108 个月前
0.3.42026/02/108 个月前
0.3.32025/06/161.4 年前
0.3.22025/06/121.4 年前
0.3.12025/06/101.4 年前
0.3.02025/06/091.4 年前

关于 @ariga/atlas-provider-sequelize 的常见问题

@ariga/atlas-provider-sequelize 是什么?

将模型装入Atlas项目.

如何安装 @ariga/atlas-provider-sequelize?

在项目目录运行 npm install @ariga/atlas-provider-sequelize,或使用 pnpm add / yarn add / bun add。它还需要宿主项目提供 peer 依赖:sequelize(^6.37.6)。npm 7 及以上与 pnpm 8 及以上默认会自动安装必需的 peer 依赖,Yarn 需要手动安装。它还提供命令行工具 atlas-provider-sequelize,可以用 npx atlas-provider-sequelize 直接运行。

@ariga/atlas-provider-sequelize 支持 TypeScript 吗?

该包的 package.json 没有声明类型入口。需要类型提示时,可以在 npm 上查找社区维护的 @types/ariga__atlas-provider-sequelize 是否存在。

@ariga/atlas-provider-sequelize 可以商用吗?

@ariga/atlas-provider-sequelize 使用 ISC 许可。宽松许可:允许商业使用、修改和再分发,通常只需在分发时保留原版权与许可声明。以上为概括,不构成法律意见,请以许可原文为准。

@ariga/atlas-provider-sequelize 的下载量有多少?

根据 npm 官方下载统计,@ariga/atlas-provider-sequelize 在 2026/10/07 – 2026/11/05 这 30 天内被下载 1,884 次,日均约 63 次。下载量会把 CI 构建、镜像同步和作为其他包依赖的安装一并计入,适合横向比较热度,不能直接等同于使用人数。

@ariga/atlas-provider-sequelize 还在维护吗?

最新版本 0.3.5 发布于 2026/02/10(8 个月前);至今共发布 20 个版本,其中过去 12 个月发布了 2 个;首次发布于 2023/09/10。发布频率只是参考信号:功能稳定的工具可能很少需要更新,建议结合源码仓库的 issue 和提交记录判断。