防止在node.js应用程序中使用sequelize放置数据库

首先我使用node.js和sequelize ORM和postgre SQL。

我有两个简单的问题:

  1. 每次我重新运行我的节点应用程序sequelize正在删除和创build数据库中的所有表。 如何防止这样做(我不希望我的数据库中的logging被删除)? 我试图设置我的NODE_ENVtesting,但没有帮助。

  2. 续集迁移如何知道它停止的地方(哪个迁移已经执行,哪个不迁移)。 例如,当我在Grails框架中使用数据库迁移时,它会自动在数据库中创build表,其中保留了在重新运行应用程序之前执行的所有迁移时间戳,并查看该表并知道哪些迁移已完成,哪些不是。 使用node / sequelize时我没有看到任何表,所以它是如何工作的? 🙂

谢谢,伊万

正如你已经知道的那样,表格正在被丢弃,因为你在做

sequelize.sync({ force: true }) 

真正的力量是罪魁祸首

sequelize_meta你的第二个问题 – 迁移的状态是保存在你的数据库表 – 我相信它被称为sequelize_meta