我一般来说都是Sequelize和Node.js的新手,我想知道是否除了创建和结构化数据库以使其在开发阶段完全适合您的项目以外,是否还需要.sync()。
以下面的示例为例:如果我已经具有数据库结构(使用MySQL Workbench或其他工具制成),那么使用.sync()是否有用?它在生产中有重要应用吗?
最佳答案
如果我已经拥有数据库结构(使用MySQL Workbench或
不管),以某种方式使用.sync()是否有用?有没有
在生产中的重要应用?
不会。Sequelizesync
将创建不存在的表。如果您已经拥有所有表,它将不会执行任何操作。但是,如果使用force: true
,它将删除存在的表并从模型定义中重新创建它们。
另外,应该优先使用migrations
而不是sync
。 sync
不反映故事的更改。迁移功能更强大,您可以使用它进行撤消,重做以及更多操作。
这是Sequelize.js: how to use migrations and sync的一个很好的答案