我正在尝试将tsv文件加载到mariadb表中。字段之一是可以为空的DATE。 根据我的收集,加载文件中的数据使用“ \ N”来标识空内容,但在这种情况下是不可行的:
ERROR 1292 (22007) at line 1: Incorrect date value: '\N' for column 'delete_date' at row 1
有什么想法可以在不编写特定的CASE WHEN的情况下如何导入数据?这是加载多个表的脚本的一部分,因此我不想将其视为特例。
将字段留空当然也是一个错误:
ERROR 1292 (22007): Incorrect date value: '' for column 'delete_date' at row 1
我认为可以为日期导入空值,所以我一定会遗漏一些东西。
答案 0 :(得分:1)
将sql_mode
服务器系统变量设置为strict
模式时,将引发该错误。如果未设置,则可以输入空白日期-会生成警告并插入'0000-00-00'。
如果您可以在导入期间设置严格模式off
,则应该可以,否则应该将CSV中的空白日期列替换为NULL或“ 0000-00-00”