sequelize Field '*xxxx*' doesn't have a default value错误解决

在node.js平台下用sequelize作为ORM框架,向数据库中插入数据时报错:Field 'id' doesn't have a default value,我的表定义为:

const Task = sequelize.define('task',{
	id:{
		type:Sequelize.BIGINT(10),
		primaryKey:true,
		allowNull:false,
		autoIncrement:true
	},
	provincecode:Sequelize.STRING(255),
	testmodules:Sequelize.STRING(255),
	triggerTime:Sequelize.STRING(255)
},{
	timestamps:false,
    //sequelize自动将表名生成为复数形式,freezeTableName为true时不改变表名
    freezeTableName: true
});

其中id字段为表的主键,并且设置了autoIncrement:true,由于之前我是用SpringBoot搭建后台的,按照我的理解,在调用create方法新增数据时,主键会自动自增,但是运行时却报错,Field 'id' doesn't have a default value ,并没有自增,但是想到自增还没到数据库那块,后台怎么知道现在数据库的id现在自增到多少了,所以想到创建表的时候也要将id字段设置自增属性,问题解决。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章