今天上课,遇到一个导入数据的方式,之前书上有介绍,但是我没在意过,一直拖在那里,今晚遇到了,还是实验了一下,好简单,嘻嘻。。
我直接用的users表空间了
首先建表语句:
-- Create table
create table T_DIC_PHONEPREFIXINFO
(
PROV VARCHAR2(200),
CITY VARCHAR2(20),
AREACODE NUMBER(10),
PREFIX NUMBER(7),
BRANDCODE VARCHAR2(4) default 1 not null
)tablespace users;
-- Add comments to the columns
comment on column T_DIC_PHONEPREFIXINFO.PROV is '省份';
comment on column T_DIC_PHONEPREFIXINFO.CITY is '城市';
comment on column T_DIC_PHONEPREFIXINFO.AREACODE is '城市编码';
comment on column T_DIC_PHONEPREFIXINFO.PREFIX is '号段';
comment on column T_DIC_PHONEPREFIXINFO.BRANDCODE
is '0: 未知
1: 全球通
2: 动感地带
3: 神州行升级版标准卡
4: 神州行升级版家园卡
5: 神州行升级版畅听卡
6: 神州行升级版5元卡
7: 神州行升级版10元卡
8: 神州行升级版15元卡
9: 神州行升级版20元卡';
-- Create/Recreate indexes
create index IDX_DIC_PHONEPREFIX on T_DIC_PHONEPREFIXINFO (PREFIX) tablespace users;
这里有5个字段,然后excel的格式也处理成5个对应的字段,然后保存为cvs格式,再用text文本打开,如下:
在text文本前面加上一段代码
options(skip=1)
load data
infile *
truncate
into table t_dic_phoneprefixinfo
fields terminated by ',' optionally enclosed by '"'
trailing nullcols
(
"PROV","CITY","AREACODE","PREFIX","BRANDCODE"
)
begindata
最终内容如下:
然后,在cmd窗口下输入如下命令:
sqlldr userid=scott/tiger@orcl control=C:\Users\pc\Desktop\T_DIC_PHONEPREFIXINFO.txt log=C:\Users\pc\Desktop\T_DIC_PHONEPREFIXINFO.log
如下:
然后可以在表中顺利找到插入的数据
这样就完成了,速度非常快。
之前还有一种用pl/sql dev工具直接导的步骤:
同样首先是建表
然后第一步:
第二步:
第三步:
第四步:
这样就OK了,但是PL/SQL导总是会容易出点奇怪的问题,当然数据量少的话,复制粘贴也是可以的,技多不压身,哈哈