错误:当我执行“sequelize db:migrate”时,“请手动安装 sqlite3 包”

问题描述 投票:0回答:8

我正在尝试使用本文创建一个示例应用程序:

https://arjunphp.com/restful-api-using-async-await-node-express-sequelize/

但是当尝试在sqlite上使用sequenze-cli执行数据库迁移时,总是出现相同的错误:

C:\WORKING\todo\todos-manager>sequelize db:migrate

Sequelize CLI [Node: 10.16.0, CLI: 5.5.0, ORM: 5.8.12]

Loaded configuration file "config\config.json".
Using environment "development".

ERROR: Please install sqlite3 package manually

我已经尝试过重建,但没有成功。

有什么想法吗?

node.js sqlite sequelize.js database-migration sequelize-cli
8个回答
1
投票

更新:

如果我使用以下语句,则不会出现错误:

npx sequelize-cli db:migrate

而不是

sequelize db:migrate

迁移成功完成!

我希望它对某人有用。

谢谢大家!


1
投票

首先全局安装sequelize-cli

sudo npm install -g sequelize-cli

然后使用以下命令执行迁移。

sequelize db:migrate

1
投票

可能有点晚了,但写这篇文章是为了因为还没有接受的答案:)

我尝试使用 Node10.x ,您安装的 sqlite3 版本可能与 Node-version 不匹配,所以请将您的版本切换到 Node8.x 或 9.x。

使用NVM进行版本切换,尽量避免全局安装包。


0
投票

就我而言:

npx sequelize-cli db:migrate


sequelize db:migrate

没用。
我不知道这是否是一个不好的做法,但只能全局安装:
npm i -g sqlite3

为我解决问题


0
投票

在我的例子中,由于节点版本不匹配,未安装 sqllite3。我将节点版本切换到 v9.11.1,之后错误就消失了。


0
投票

设置

unsafe-perm
对我有用:

npm i --unsafe-perm


0
投票

如果您在这里没有修复,您可能像我一样禁用了 npm postinstall 脚本。对我来说,解决办法是:

cd project
cd node_modules/sqlite3
npm install
cd ../../
npx sequelize-cli db:migrate

现在可以了


0
投票

如果您在这个阶段仍然无法让它工作,请在项目文件夹中运行它:

npm update

npx sequelize-cli db:migrate
© www.soinside.com 2019 - 2024. All rights reserved.