【问题标题】:External Table on file without terninator没有终结符的外部表存档
【发布时间】:2022-01-23 14:03:32
【问题描述】:
假设我有一个这样的文件:
101010AAAABBB
我没有用于分隔不同字段的符号,我想将其加载到外部表中
在我的外部表的定义中,我通常会放
access parameters (records delimited by newline
fields terminated by ";"
如果我有
101010;AAAA;BBB
但就我而言,如何编写以位置方式加载每个字段的语法?
Oracle 版本 10g
谢谢!
标记
【问题讨论】:
标签:
sql
oracle
external-tables
【解决方案1】:
正如你所说 - 位置。
示例test.txt 文件内容:
101010AAAABBB
555555CCCCDDD
外部表:
SQL> create table tpos
2 (col1 char(6),
3 col2 char(4),
4 col3 char(3)
5 )
6 organization external
7 (type oracle_loader
8 default directory ext_dir
9 access parameters (records delimited by newline
10 fields ldrtrim
11 (col1 (1:6),
12 col2 (7:10),
13 col3 (11:13)
14 ))
15 location ('test.txt'))
16 reject limit unlimited;
Table created.
SQL> select * From tpos;
COL1 COL2 COL
------ ---- ---
101010 AAAA BBB
555555 CCCC DDD
SQL>