StarRocks(doris)报Reason: null value for not null column, column=xxx. src line: [];

StarRocks版本:1.19.1 65e87c3

通过http api批量插入数据的时候报Reason: null value for not null column, column=xxx. src line: [];

解决方法:

  • 检查是否有null值存在
  • 增加数据库字段长度

如下语句更改长度:

ALTER TABLE 表名
MODIFY COLUMN 字段名 VARCHAR(32) DEFAULT '';

如果能够允许一定为错误率可以,即报错的行插入失败,其它行插入成功,可以关闭enable_insert_strict,关闭方式:SET enable_insert_strict = false;

enable_insert_strict参数是session参数,执行SET enable_insert_strict = false\true;后会立刻生效,但断开当前连接后就会失效,若需要全局修改,可以加上global,例如全局关闭:

mysql> SET global enable_insert_strict = false;

strict mode说明:

每次insert
into操作都是一次导入事务,事务的定义大家并不陌生,简单说就是这次导入操作要么整批成功,要么整批失败,不会说存在一次导入操作有的数据导入成功有的不成功的情况。实际业务中,我们的数据可能不是那么的规整,那么通常我们在导入时就会设置一个容错率来忽视一定比例的脏数据,StarRocks的主要导入方式中都有容错类的参数,但insert方式是没法处理容错率这个逻辑的,所以StarRocks设计了严格模式参数enable_insert_strict:

enable_insert_strict:当该参数为false时,表示一次insert任务只要有一条或以上数据被正确导入,就返回成功。当该参数设置为true时,表示但凡有一条数据错误,则任务整体失败。该参数默认为true。可通过SET
enable_insert_strict = false; 来设置。

参考:https://blog.csdn.net/ult_me/article/details/122823687

  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值