我正在尝试创建一个示例应用程序,使用这篇文章:
https://arjunphp.com/restful-api-using-async-await-node-express-sequelize/
但是,当尝试在sqlite上使用sequenze-configuration执行数据库迁移时,总是出现相同的错误:
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
我试过重建,但没有成功。
有什么想法吗?
9条答案
按热度按时间fd3cxomn1#
更新:
如果我使用以下语句,则不会发生错误:
而不是
迁移成功!
我希望这对某人有用。
感谢大家!
hk8txs482#
首先全局安装sequelize-task
sudo npm install -g sequelize-cli
然后使用以下命令执行迁移。
vlju58qv3#
在我的情况下,两者:
npx sequelize-cli db:migrate
和
sequelize db:migrate
没用
我不知道这是否是一个坏的做法,但只有全球安装:
npm i -g sqlite3
帮我解决问题
yk9xbfzb4#
可能有点晚了,但写这篇文章是因为还没有被接受的答案:)
我尝试了Node10.x,你安装的sqlite3版本可能与Node-version不匹配,所以请将你的版本切换到Node8.x或9.x。
使用NVM在版本之间切换,并尽量避免全局安装软件包。
67up9zun5#
在我的例子中,由于节点版本不匹配,没有安装sqlite3。我将我的节点版本切换到v9.11.1,之后错误就消失了。
unftdfkk6#
设置
unsafe-perm
为我工作:npm i --unsafe-perm
cld4siwp7#
如果你在这里没有修复,可能你像我一样禁用了npm postinstall脚本。对我来说,解决办法是:
现在它成功了
wwtsj6pe8#
如果你在这个阶段仍然无法让它工作,那么在项目文件夹中运行这个:
busg9geu9#
请全局安装sqlite3节点模块,它将修复此问题