MySql InnoDB - 在表的“Not Null”列中插入

我对InnoDB和MyISAM数据库存储引擎有疑问 .

假设我们在一个表中有5列,所有列都设置为“Not Null” . 当我运行查询只在MyISAM数据库的两列中插入值时,它不会生成任何错误,将记录插入表中并默认将其他列保留为空 . 但是当我对InnoDB数据库执行相同操作时,会产生“somecolumn not null”的错误 .

我的所有表都设置为MyISAM类型,但我的数据库是InnoDB,我遇到了这个问题 .

有什么办法可以解决吗?我已经有几个解决方案要么将数据库类型更改为MyISAM,要么将所有表的每一列都设置为“Null”值 . 我想知道比上面提到的更好的解决方案 .

希望它确实有意义 . :)

回答(1)

3 years ago

为所有NOT NULL列设置DEFAULT值,如果未在INSERT上指定值,则将使用默认值 .