本文介绍了在Sequelize中,model.destroy({truncate:true})不会重置主键的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
在Sequelize中,我正在使用此函数model.destory({truncate:true}),它将删除表中的所有数据.但是问题在于它不会重置应设置为零的表中的主键序列.我正在使用Mysql.有人说Mysql自动重设主键序列,但是在我的情况下却没有发生.
In Sequelize, I am using this function model.destory({ truncate: true }), it delete all data in table. But the issue is that it does not reset the primary key sequence in table which should be set to Zero. I am using Mysql.Some said that Mysql automatically reset the primary key sequence, but it is not happening in my case.
这是我的代码:
db.Booking.destroy({ truncate: { cascade: false } })
.then(() => {
res.json({ status: true });
}, (err) => {
console.log('truncate: ', err);
res.json(err);
});
推荐答案
您使用的语法不正确:
db.Booking.destroy({ truncate: { cascade: false } })
应该是:
db.Booking.destroy({ truncate : true, cascade: false })
请参见文档.
这篇关于在Sequelize中,model.destroy({truncate:true})不会重置主键的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!