我正在尝试将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
我认为有可能为日期导入空值,因此我必须缺少一些东西。
最佳答案
采取from the mariadb knowledge base
当sql_mode
服务器系统变量设置为strict
模式时,将引发该错误。如果未设置,则可以输入空白日期-会生成警告并插入'0000-00-00'。
如果您可以在导入期间设置严格模式off
,则应该可以,否则,您需要将CSV中的空白日期列替换为NULL或“ 0000-00-00”。