In Sequelize model.destroy({ truncate: true }) does not reset primary key(在 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);
});
推荐答案
你没有使用正确的语法:
You're not using the correct syntax:
db.Booking.destroy({ truncate: { cascade: false } })
应该是:
db.Booking.destroy({ truncate : true, cascade: false })
请参阅文档.
这篇关于在 Sequelize model.destroy({ truncate: true }) 不会重置主键的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!
本文标题为:在 Sequelize model.destroy({ truncate: true }) 不会重置主键


基础教程推荐
- CHECKSUM 和 CHECKSUM_AGG:算法是什么? 2021-01-01
- ORA-01830:日期格式图片在转换整个输入字符串之前结束/选择日期查询的总和 2021-01-01
- 带有WHERE子句的LAG()函数 2022-01-01
- 如何在 CakePHP 3 中实现 INSERT ON DUPLICATE KEY UPDATE aka upsert? 2021-01-01
- MySQL 5.7参照时间戳生成日期列 2022-01-01
- 从字符串 TSQL 中获取数字 2021-01-01
- MySQL根据从其他列分组的值,对两列之间的值进行求和 2022-01-01
- 使用 VBS 和注册表来确定安装了哪个版本和 32 位 2021-01-01
- while 在触发器内循环以遍历 sql 中表的所有列 2022-01-01
- 带更新的 sqlite CTE 2022-01-01