【问题标题】:Loading a file using sqlloader使用 sqlloader 加载文件
【发布时间】:2017-06-30 22:18:03
【问题描述】:

我试图使用 sql 加载器将 JSON 文件插入到只有一列 varchar2(4000) 的表中。加载后,我看到文件文本加载为多行而不是一行,但我希望它们在一行中,整个文件在一列一行中。不知道为什么会发生这种情况,是否有一个选项可以在控制文件中说明?这是我的控制文件:

LOAD DATA
INFILE 'c:\json\sample-order.json'
  INTO TABLE at_jsondocs
  FIELDS  
   ( jsontext CHAR(4000) )

【问题讨论】:

    标签: sql-loader


    【解决方案1】:

    查看 Alex Poole 的解释 here,但是你表中的列应该是 CLOB,你需要像这样构造你的控制文件:

    LOAD DATA
    INFILE *
    INTO TABLE at_jsondocs
    (
      x FILLER CHAR(1),
      jsontext LOBFILE(CONSTANT "c:\json\sample-order.json") TERMINATED BY EOF
    )
    BEGINDATA
    0
    

    【讨论】:

      猜你喜欢
      • 2016-01-21
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-12-27
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多