2017-06-29 57 views
1

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

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

回答

0

见亚历克斯普尔解释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