关于java批量插入时字段为null

我现在遇到这样一个问题,

首先,我的数据库(mysql)有两个字段是不允许为null的,分别是创建时间(creat_time)和修改时间(uptedate_time),他们都是由数据库在插入时自己生成的
但是,我在批量插入数据的时候,由于mybatisplus中自带的批量插入很影响效率,所以我就实现了他的一个组件sql中的一个方法insertBatchSomeColumn(),
之后问题就来了,批量插入的时候我没有给creat_time,uptedate_time赋值(因为数据库会自己生成时间)就会出现creat_time column cannot be null ,该字段不能为空的错误,我该如何解决?求各位给点思路
前提不能改变数据库,@TableField(exist = false),因为后期需要查询返回数据

这两列是的数据不能为null,且在插入时由数据库自动生成时间

img

关于自我实现批量插入的方法,各位可以参考
https://blog.csdn.net/j1231230/article/details/111386018

现在就是不能改动数据库对于字段的设置,代码中也不能忽略这两个字段

我的数据库为mysql,字段类型为timestamp,你可以参考下:
create_at 默认:CURRENT_TIMESTAMP 根据当前时间戳更新:否 可否为空:是
update_at 默认:CURRENT_TIMESTAMP 根据当前时间戳更新:是 可否为空:是

不知道你使用的是什么数据库,
以Oracle为例子吧
如果你的creat_time,uptedate_time 不允许为null并且default 是当前系统时间,
那么你在插入数据时如果你忽略了这两个字段,那么数据库会自动用当前时间做为默认值插入到这两个字段
但是如果插入数据时,你没有忽略这两个字段,也就是sql中包含了这两个字段,那么数据库是不会给默认值的,会用你给的值进行插入,你给null那么也会插入null,所以这时候必然就报错了。