使用oracle_loader类型导入的EXCEL中含有内嵌换行符的数据应该如何处理

createtableCS_ORDER_SER_FOR144039679(TABLE_COL1VARCHAR2(675),TABLE_COL2VARCHAR2(675),... create table CS_ORDER_SER_FOR144039679 (TABLE_COL1 VARCHAR2(675),TABLE_COL2 VARCHAR2(675),TABLE_COL3 VARCHAR2(675),TABLE_COL4 VARCHAR2(675),TABLE_COL5 VARCHAR2(675),TABLE_COL6 VARCHAR2(675),TABLE_COL7 VARCHAR2(675),TABLE_COL8 VARCHAR2(675),TABLE_COL9 VARCHAR2(675),TABLE_COL10 VARCHAR2(675),TABLE_COL11 VARCHAR2(675),TABLE_COL12 VARCHAR2(675),TABLE_COL13 VARCHAR2(675),TABLE_COL14 VARCHAR2(675),TABLE_COL15 VARCHAR2(675),TABLE_COL16 VARCHAR2(675),TABLE_COL17 VARCHAR2(675),TABLE_COL18 VARCHAR2(675),TABLE_COL19 VARCHAR2(675),TABLE_COL20 VARCHAR2(675),TABLE_COL21 VARCHAR2(675),TABLE_COL22 VARCHAR2(675),TABLE_COL23 VARCHAR2(675),TABLE_COL24 VARCHAR2(675),TABLE_COL25 VARCHAR2(675),TABLE_COL26 VARCHAR2(675),TABLE_COL27 VARCHAR2(675),TABLE_COL28 VARCHAR2(675),TABLE_COL29 VARCHAR2(675),TABLE_COL30 VARCHAR2(675),TABLE_COL31 VARCHAR2(675),TABLE_COL32 VARCHAR2(675),TABLE_COL33 VARCHAR2(675),TABLE_COL34 VARCHAR2(675),TABLE_COL35 VARCHAR2(675),TABLE_COL36 VARCHAR2(675))
organization external
(type oracle_loader default directory data_dir access parameters
( records delimited by newline CHARACTERSET ZHS16GBK badfile 'DATA_DIR':'CS_ORDER_SER_FOR144039674.bad'
skip 4 fields terminated by ',' optionally enclosed
by '"' ldrtrim missing field values are null REJECT ROWS WITH ALL NULL FIELDS )
location ('dataFile-1509949544135.csv')) reject limit unlimited;

上面是对应的生成外部表的sql,但是我的文件中有内嵌的换行符,而delimited by newline 则是定义了导入数据换行为newline。最后生成的数据是错误的,本来应该是一条数据中其中一个字段的值,因为其中有换行符,导致这个值分成了几条数据。

在网上查了很久,没有找到解决的办法,求大神指点。
展开
 我来答
Mexico卡卡
2017-11-29 · TA获得超过1万个赞
知道大有可为答主
回答量:1.3万
采纳率:98%
帮助的人:1902万
展开全部

操作步骤如下:

  • 准备数据:在excel中构造出需要的数据

  • 2.将excel中的数据另存为文本文件(有制表符分隔的)

    3.将新保存到文本文件中的数据导入到pl*sql中

    在pl*sql中选择tools-->text importer,在出现的窗口中选择"Data from Textfile",然后再选择"Open data file",

    在弹出的文件选择框中选中保存有数据的文本文件,此时将会看到data from textfile中显示将要导入的数据

    4.在configuration中进行如下配置

    注:如果不将"Name in header"勾选上会导致字段名也当做记录被导入到数据库中,从而导致数据错误

    5.点击data to oracle,选择将要导入数据的表,并在fields中将文本中的字段与表中的字段进行关联

    6.点击import按钮进行导入

    7.查看导入的数据

    OK,至此数据导入成功。

本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式