Mysql 如何在node.js中使用sequelize在创建时将数据保存在数据库中
我试图在创建数据库时保存批量数据。我的代码有以下问题:Mysql 如何在node.js中使用sequelize在创建时将数据保存在数据库中,mysql,node.js,sequelize.js,Mysql,Node.js,Sequelize.js,我试图在创建数据库时保存批量数据。我的代码有以下问题: 如果我保持models.sequelize.sync({force:true}),那么(function(){})则表示未创建表 若我保持{force:false},那个么在第一次部署中它创建表,在第二次部署中它将数据保存在数据库中 model/Speclization.js module.exports = function(sequelize, DataTypes) { var Speclization = sequeliz
- 如果我保持models.sequelize.sync({force:true}),那么(function(){})则表示未创建表
- 若我保持{force:false},那个么在第一次部署中它创建表,在第二次部署中它将数据保存在数据库中
module.exports = function(sequelize, DataTypes) {
var Speclization = sequelize.define("Speclization",
{
speclizationname: DataTypes.STRING
}, {
tableName: 'speclization', // this will define the table's name
timestamps: false // this will deactivate the timestamp columns
}
);
Speclization.bulkCreate([
{speclizationname: 'Computer Science'}, // part of records argument
{speclizationname: 'Information Technology'},
{speclizationname: 'Electrical'},
{speclizationname: 'Other'},
{speclizationname: 'Mechninncal'},
{speclizationname: 'Electronics'}
], ['speclizationname'])
return Speclization;
};
我想不出在应用程序部署时如何将数据保存到数据库中的正确方法如何从模型定义中删除
bulkCreate
,并将其放入sync
回调中?(因为表将在sync
之后创建,所以我认为在sync
完成之前不能bulkCreate
)
如下图所示:
models.sequelize.sync({force: true}).then(function(){
Speclization.bulkCreate([
{speclizationname: 'Computer Science'}, // part of records argument
{speclizationname: 'Information Technology'},
{speclizationname: 'Electrical'},
{speclizationname: 'Other'},
{speclizationname: 'Mechninncal'},
{speclizationname: 'Electronics'}
]);
});
然后将模型定义如下:
module.exports = function(sequelize, DataTypes) {
var Speclization = sequelize.define("Speclization",
{
speclizationname: DataTypes.STRING
}, {
tableName: 'speclization', // this will define the table's name
timestamps: false // this will deactivate the timestamp columns
}
);
return Speclization;
};
专业化应该用英语写为“专业化”。) 如何从模型定义中删除
bulkCreate
,并将其放入sync
回调中?(因为表将在sync
之后创建,所以我认为在sync
完成之前不能bulkCreate
)
如下图所示:
models.sequelize.sync({force: true}).then(function(){
Speclization.bulkCreate([
{speclizationname: 'Computer Science'}, // part of records argument
{speclizationname: 'Information Technology'},
{speclizationname: 'Electrical'},
{speclizationname: 'Other'},
{speclizationname: 'Mechninncal'},
{speclizationname: 'Electronics'}
]);
});
然后将模型定义如下:
module.exports = function(sequelize, DataTypes) {
var Speclization = sequelize.define("Speclization",
{
speclizationname: DataTypes.STRING
}, {
tableName: 'speclization', // this will define the table's name
timestamps: false // this will deactivate the timestamp columns
}
);
return Speclization;
};
专业化应该用英语写为“专业化”。) 您能告诉我如何在每次部署时使用旧数据库重新创建数据库吗。因为如果我保留{force:true},那么旧的数据库就会被删除,新的数据库就会被创建。我不确定你的意思,我认为它属于一个新问题:)是的,你是对的:)。我发布了一个新问题:您能告诉我如何在每次部署旧数据库时使用它重新创建数据库吗。因为如果我保留{force:true},那么旧的数据库就会被删除,新的数据库就会被创建。我不确定你的意思,我认为它属于一个新问题:)是的,你是对的:)。我发布了一个新问题: