大括号分割的.dat格式的文本文件如何导入oracle?

kedlion 2008-10-13 12:11:36
大括号分割的.dat格式的文本文件如何导入oracle?

下面是其中一行数据:

1}0477}47711}伊旗}}}}}22B}公客}0}城市}47300126}亲情无限1+1}120101}聚类市场}48300231}基础商品_鄂尔多斯甲种ADSL}162009}宽带网络使用费(包月)}60}互联网业务产品线}10}基础业务}6010200}宽带接入}6010200103}ADSL虚拟拨号}10317}ADSL使用费}200808}-100}20080904}22B}公客
...全文
211 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
sleepzzzzz 2008-10-13
  • 打赏
  • 举报
回复
把它当作或复制为文本,然后使用sqlloader
控制文件内容例如:
load data
infile 'test.txt'
append into table tb_
fields terminated by '}' ---这里指定分割符
.....
BlueskyWide 2008-10-13
  • 打赏
  • 举报
回复
能否经过转换(也可以编程进行词法分析)解析成.xml文件,然后导入至Oracle中。
gisinfo 2008-10-13
  • 打赏
  • 举报
回复
两中方法


DTS

SQLLOADER
aaajj 2008-10-13
  • 打赏
  • 举报
回复
大家都很热心啊
ruihuahan 2008-10-13
  • 打赏
  • 举报
回复
6 楼的足够详细,好人啊。呵呵
yyxhcf 2008-10-13
  • 打赏
  • 举报
回复
都被强人说完了,只有顶了!
cosio 2008-10-13
  • 打赏
  • 举报
回复
顶上!
hyrongg 2008-10-13
  • 打赏
  • 举报
回复
第一步:我在C:\test\New Folder下面创建一个data.dat文件,文件里面使你的模拟数据:
1}0477}47711}伊旗}}}}}22B}公客}0}城市}47300126}亲情无限1+1}120101}聚类市场}48300231}基础商品_鄂尔多斯甲种ADSL

第二步:然后再同样的目录下创建一个ldr.ctl的控制文件
控制文件的内容如下:
LOAD DATA
INFILE 'data.dat'
INSERT INTO TABLE t
FIELDS TERMINATED BY "}"
(
f1,
f2,
f3,
f4,
f5,
f6,
f7,
f8,
f9,
f10,
f11,
f12,
f13,
f14,
f15,
f16,
f17,
f18
)

第三步:在我的test用户下创建t表去存储你的数据,

C:\>sqlplus test/test

SQL*Plus: Release 9.2.0.1.0 - Production on Mon Oct 13 13:32:11 2008

Copyright (c) 1982, 2002, Oracle Corporation. All rights reserved.


Connected to:
Oracle9i Enterprise Edition Release 9.2.0.1.0 - Production
With the Partitioning, OLAP and Oracle Data Mining options
JServer Release 9.2.0.1.0 - Production
SQL> create table t(
2 f1 varchar2(30),
3 f2 varchar2(30),
4 f3 varchar2(30),
5 f4 varchar2(30),
6 f5 varchar2(30),
7 f6 varchar2(30),
8 f7 varchar2(30),
9 f8 varchar2(30),
10 f9 varchar2(30),
11 f10 varchar2(30),
12 f11 varchar2(30),
13 f12 varchar2(30),
14 f13 varchar2(30),
15 f14 varchar2(30),
16 f15 varchar2(30),
17 f16 varchar2(30),
18 f17 varchar2(30),
19 f18 varchar2(30)
20 );

Table created.



第四步:退出SQL,在cmd里面运行SQLldr

SQL> exit
Disconnected from Oracle9i Enterprise Edition Release 9.2.0.1.0 - Production
With the Partitioning, OLAP and Oracle Data Mining options
JServer Release 9.2.0.1.0 - Production

C:\>cd C:\test\New Folder

C:\test\New Folder>dir
Volume in drive C is Local Disk
Volume Serial Number is 507A-5FAF

Directory of C:\test\New Folder

10/13/08 13:28 <DIR> .
10/13/08 13:28 <DIR> ..
10/13/08 13:25 259 data.dat
10/13/08 13:27 343 ldr.ctl
2 File(s) 602 bytes
2 Dir(s) 20,581,208,064 bytes free

C:\test\New Folder>sqlldr userid=test/test control=ldr.ctl

SQL*Loader: Release 9.2.0.1.0 - Production on Mon Oct 13 13:37:13 2008

Copyright (c) 1982, 2002, Oracle Corporation. All rights reserved.

Commit point reached - logical record count 1



第五步:
查询数据:

SQL> conn test/test@orcl
Connected to Oracle9i Enterprise Edition Release 9.2.0.1.0
Connected as test

SQL> select * from t;

F1 F2 F3 F4 F5 F6 F7 F8 F9 F10 F11 F12 F13 F14 F15 F16 F17 F18
------------------------------ ------------------------------ ------------------------------ ------------------------------ ------------------------------ ------------------------------ ------------------------------ ------------------------------ ------------------------------ ------------------------------ ------------------------------ ------------------------------ ------------------------------ ------------------------------ ------------------------------ ------------------------------ ------------------------------ --------------------------------------------------------------------------------
1 0477 47711 伊旗 22B 公客 0 城市 47300126 亲情无限1+1 120101 聚类市场 48300231 基础商品_鄂尔多斯甲种ADSL

SQL>
oracledbalgtu 2008-10-13
  • 打赏
  • 举报
回复
使用sqlldr导入,分隔符用},类似如下:
fields terminated by '}'

或者装个pl/sql developer,通过图形化界面把数据导入指定的表,很简单:
选择tools工具栏----> text importer就可以按照提示做了.


[Quote=引用楼主 kedlion 的帖子:]
大括号分割的.dat格式的文本文件如何导入oracle?

下面是其中一行数据:

1}0477}47711}伊旗}}}}}22B}公客}0}城市}47300126}亲情无限1+1}120101}聚类市场}48300231}基础商品_鄂尔多斯甲种ADSL}162009}宽带网络使用费(包月)}60}互联网业务产品线}10}基础业务}6010200}宽带接入}6010200103}ADSL虚拟拨号}10317}ADSL使用费}200808}-100}20080904}22B}公客
[/Quote]
luoyanqing119 2008-10-13
  • 打赏
  • 举报
回复
Data Pump Import,很好用.step by step

17,377

社区成员

发帖
与我相关
我的任务
社区描述
Oracle 基础和管理
社区管理员
  • 基础和管理社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧