Sequelize.js Sequelizejs:错误:重复的键值违反了唯一约束;信息“pkey”;
我使用sequelize与我的Nodejs应用程序连接了一个PostrgresDB,我试图创建并保存一个模型,但它抛出了Sequelize.js Sequelizejs:错误:重复的键值违反了唯一约束;信息“pkey”;,sequelize.js,Sequelize.js,我使用sequelize与我的Nodejs应用程序连接了一个PostrgresDB,我试图创建并保存一个模型,但它抛出了错误:重复的键值违反了唯一约束“message\u pkey” 问题是数据库中已经存在实体,并且它正试图从数据库中已经存在的ID 1开始增量保存,如何使它从数据库中保存的最后一个ID开始保存?这是我的模型 var Sequelize = require('sequelize'); var db = require('../database/postgres'); var
错误:重复的键值违反了唯一约束“message\u pkey”
问题是数据库中已经存在实体,并且它正试图从数据库中已经存在的ID 1开始增量保存,如何使它从数据库中保存的最后一个ID开始保存?这是我的模型
var Sequelize = require('sequelize');
var db = require('../database/postgres');
var Message =db.define('message', {
id: {
type: Sequelize.INTEGER,
field: 'id',
autoIncrement: true,
allowNull: true,
primaryKey: true
},
time: {
type: Sequelize.DATE,
field: 'time'
},
isread: {
type: Sequelize.BOOLEAN,
field: 'isread'
},
message: {
type: Sequelize.STRING,
field: 'message'
},
messagestatus: {
type: Sequelize.ENUM,
values: ['UNDELIVERED', 'DELIVERED', 'UNREAD', 'READ'],
field: 'messagestatus'
},
receiver: {
type: Sequelize.INTEGER,
field: 'receiver'
},
sender: {
type: Sequelize.INTEGER,
field: 'sender'
},
}, {
tableName: 'message',
timestamps: false
});
module.exports = Message;
首先在PostrgresDB中运行此命令:
SELECT setval('TABLENAME_id_seq', (SELECT MAX(id) FROM "TABLENAME"));
// Change TABLENAME with your table
然后尝试插入数据
这是PostrgresDB中非常常见的序列问题,
欲知更多详情,请点击这里:),祝您编码愉快BTW@Thanus,谢谢:)