【问题标题】:"\N" is converted into 0 in mysql using mysqlimport, I want to avoid that and I need a null instead"\N" 在 mysql 中使用 mysqlimport 转换为 0,我想避免这种情况,我需要一个 null
【发布时间】:2018-03-21 22:36:48
【问题描述】:

我想避免这种情况,我需要一个 null 而不是 0

以“}”分隔的示例日期

InActive}null}ANO149089}2017-07-17 12:50:46.903}\N}EME}

下面我需要在mysqlimport之后是:

InActive null ANO149089 2017-07-17 12:50:47 . EME

PS:我想通过mysqlimport来实现,而不必更改文本文件中的任何内容

【问题讨论】:

  • \N 将被转换为NULL,而不是0
  • 我认为没有任何方法可以使用mysqlimport 转换数据。您需要使用 LOAD DATA LOCAL INFILE 以便将输入列分配给变量,然后使用 SET 子句将其转换为表中的不同值。
  • 我找到了解决方案。在 mysqlimport 选项中添加 --fields-escaped-by='\\' 会将 \N 处理为 null 而不是零。
  • 发布您的解决方案作为答案。
  • @Barmar 我会做的。你能帮我解决这个问题吗stackoverflow.com/questions/49394430/…

标签: mysql mysqlimport


【解决方案1】:

mysqlimport -u rwuser -p$passwd -h "host" --local abc_schema xyz.txt --fields-terminated-by='μ' --lines-terminated-by='\n' --fields-转义='\\'

文本文件中的\N 不会使用上面的 int 类型转换为(默认为 0)。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多