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字段設置自增屬性,問題解決。

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