- 浏览: 79892 次
- 性别:
- 来自: 北京
最新评论
-
streamsong:
王雨尘 写道
的确是说索引是排序的,我漏掉啦
我们为什么要用索引,用索引为什么比不用索引快 -
heerwa:
...
我们为什么要用索引,用索引为什么比不用索引快 -
liulanghan110:
那么用索引为什么会提高性能呢?因为索引(以B树索引为例)是树状 ...
我们为什么要用索引,用索引为什么比不用索引快 -
王雨尘:
我们为什么要用索引,用索引为什么比不用索引快 -
pangpang514:
居然和强哥合影过。。。。佩服!
我们为什么要用索引,用索引为什么比不用索引快
朋友打电话问我如何利用sql讲mysl导出的文本数据加载到oracle数据库,电话说了他也没听清楚,我做了如下实验,给他做例子:
一、加载txt文本
1.在D盘建立sqlldr的控制文件,111.ctl 内容如下
LOAD DATA
INFILE 'd:\111.txt'
INTO TABLE SALGRADE_TEST
TRUNCATE
FIELDS TERMINATED BY ','
(GRADE,LOSAL,HISAL)
2.在D盘建立sqlldr的数据文件111.txt,内容如下格式
1,700,1200
2,1201,1400
3,1401,2000
4,2001,3000
5,3001,9999
3.在CMD的命令行模式执行加载操作
sqlldr scott/tiger control=d:\111.ctl log=d:\111.log bad=d:\111.ba
SQL*Loader: Release 11.2.0.1.0 - Production on 星期三 9月 14 10:58:35 2011
Copyright (c) 1982, 2009, Oracle and/or its affiliates. All rights reserved
达到提交点 - 逻辑记录计数 4
达到提交点 - 逻辑记录计数 5
4.登录数据库验证加载结果
D:\window\server\mysql-5.1.51\bin>sqlplus scott/tiger
连接到:
Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - Production
With the Partitioning, OLAP, Data Mining and Real Application Testing options
SQL> select * from SALGRADE_TEST;
GRADE LOSAL HISAL
---------- ---------- ----------
1 700 1200
2 1201 1400
3 1401 2000
4 2001 3000
5 3001 9999
5.导入成功之后,查看111.log
6.注释
LOAD DATA 控制文件标识
INFILE 'd:\111.txt'为数据文件地址和名称,此处如果是INFILE *表示要加载的数据就在这个控制文件里,也就是BEGINDATA后面跟的内容。详见7
INTO TABLE SALGRADE_TEST要往SALGRADE_TEST表里加载数据
TRUNCATE如果表里有数据,先truncate表,然后再加载,TRUNCATE还可换成其他值,比如
insert,为缺省方式,在数据装载开始时要求表为空,如果表中有数据,会报错而终止。
SQL*Loader-601: 对于 INSERT 选项, 表必须为空。表 SALGRADE_TEST 上出错
append,在表中追加新记录,如果。表上有主键和唯一性约束,新加载的数据的相关字段值不能重复
replace,删除旧记录,替换成新装载的记录 ,要求有delete权限
truncate,同上,要求有truncate权限
FIELDS TERMINATED BY ',' 数据以逗号分隔,如果是TERMINATED BY WRITESPACE表示以空白分隔,如果不指定FIELDS TERMINATED BY ',',需要为每一列都指定分隔符,如下:
(GRADE [interger external] TERMINATED BY ',',
LOSAL [interger external] TERMINATED BY ',',
HISAL [interger external] TERMINATED BY ',')
例如:
LOAD DATA
INFILE 'd:\111.txt'
TRUNCATE
INTO TABLE SALGRADE_TEST
(GRADE TERMINATED BY ',',
LOSAL TERMINATED BY ',',
HISAL TERMINATED BY ',')
(GRADE,LOSAL,HISAL) 要加载到表中的这些字段,字段顺序需要和数据文件111.txt内的数据对应,如果单独为每一列都指定了分隔符,此部分就不需要了。
7.如果数据量不大,可以讲sqlload的数据文件(111.txt)集成到sqlload的控制文件(111.ctl)内,例如:
LOAD DATA
INFILE *
TRUNCATE
INTO TABLE SALGRADE_TEST
FIELDS TERMINATED BY ','
(GRADE,LOSAL,HISAL)
BEGINDATA
1,700,1200
2,1201,1400
3,1401,2000
4,2001,3000
5,3001,9999
加载
D:\>sqlldr scott/tiger control=d:\111.ctl
SQL*Loader: Release 11.2.0.1.0 - Production on 星期三 9月 14 17:03:53 2011
Copyright (c) 1982, 2009, Oracle and/or its affiliates. All rights reserved.
达到提交点 - 逻辑记录计数 4
达到提交点 - 逻辑记录计数 5
登录数据库验证加载结果
D:\>sqlplus scott/tiger
连接到:
Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - Production
With the Partitioning, OLAP, Data Mining and Real Application Testing options SQL> SELECT * FROM SALGRADE_TEST;
GRADE LOSAL HISAL
---------- ---------- ----------
1 700 1200
2 1201 1400
3 1401 2000
4 2001 3000
5 3001 9999
二、加载csv格式的数据
1.建立测试表
D:\>sqlplus scott/tiger
连接到:
Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 – Production
With the Partitioning, OLAP, Data Mining and Real Application Testing options
SQL> create table dept_test as select * from dept where 1=2;
表已创建。
2.建立sqlload的数据文件111.csv,内容如下
10 ACCOUNTING NEW YORK
20 RESEARCH DALLAS
30 SALES CHICAGO
40 OPERATIONS BOSTON
3.建立sqlload的控制文件111.ctl,内容如下
LOAD DATA
INFILE 'd:\111.csv'
TRUNCATE
INTO TABLE DEPT_TEST
FIELDS TERMINATED BY ','
(DEPTNO,DNAME,LOC)
4.执行加载操作
D:\>sqlldr scott/tiger control=d:\111.ctl log=d:\111.log
SQL*Loader: Release 11.2.0.1.0 - Production on 星期四 9月 15 09:47:44 2011
Copyright (c) 1982, 2009, Oracle and/or its affiliates. All rights reserved.
达到提交点 - 逻辑记录计数 4
5.登录数据库查询
D:\>sqlplus scott/tiger
连接到:
Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 – Production
With the Partitioning, OLAP, Data Mining and Real Application Testing options
SQL> select * from dept_test;
DEPTNO DNAME LOC
---------- -------------- -------------
10 ACCOUNTING NEW YORK
20 RESEARCH DALLAS
30 SALES CHICAGO
40 OPERATIONS BOSTON
三、加载图片到数据库
1.创建测试表,由于图片在数据库中以blob的形式保存,这里是有了11g的新特性,securefiles LOB的形式存储图片。
SQL> create table t_load_sf (id number, full_name varchar2(100),
2 create_date date, contents blob, constraint pk_t_load_sf primary key(id))
3 lob (contents) store as securefile;
表已创建。
2.创建sqlload的数据文件111.txt,内容如下:
1,DSC00086.JPG
2,DSC00122.JPG
3,DSC00145.JPG
4,DSC00146.JPG
5,psu.jpg
3.创建sqlload的控制文件111.ctl,内容如下:
LOAD DATA
INFILE '111.txt'
INTO TABLE T_LOAD_SF
TRUNCATE
FIELDS TERMINATED BY ','
(ID CHAR(255),
FULL_NAME CHAR(255),
CREATE_DATE SYSDATE,
CONTENTS LOBFILE(FULL_NAME) TERMINATED BY EOF)
4.加载
D:\test>sqlldr scott/tiger control=D:\111.ctl log=d:\111.log
SQL*Loader: Release 11.2.0.1.0 - Production on 星期四 9月 15 11:29:13 2011
Copyright (c) 1982, 2009, Oracle and/or its affiliates. All rights reserved.
达到提交点 - 逻辑记录计数 5
5.登录数据库验证
SQL> select * from t_load_sf where rownum=1;
ID FULL_NAME CREATE_DATE CONTENTS
-------- --------------- -------------- -----------------------------------
1 DSC00086.JPG 15-9月 -11 FFD8FFE1538045786966000049492A00080
000000B000E01020020000000920000000F
01020005000000B20000001001020008000
000B8000000120103000100000001000000
1A01050001000000C000
如果使用plsqldev工具,可以看到加载进数据库的图片
发表评论
-
将博客搬至CSDN
2013-12-06 15:49 56将博客搬至CSDN -
博客地址更换通知
2012-09-29 09:23 601自2011年8月,博客使用新地址www.dbdream.org ... -
如何追踪其他SESSION会话信息
2012-02-21 20:35 1289今天测试说在加载条目数据、校验数据和质检数据的时候很慢, ... -
SHM不足导致导致数据库宕机
2012-02-21 20:17 1243今天早上到办公室,开发说测试环境应用程序挂掉,看日志说是连接不 ... -
PCTFREE和PCTUSED及将LOB存到行外
2012-02-17 11:14 1440今天的ADDM报告建议重建存放图片的表并增大PCTFREE,这 ... -
SGA_TARGET大于SGA_MAX_SIZE的真实案例
2012-02-17 11:05 1354今天在给库户数据库健康检查的时候,发现个很奇怪的问题,S ... -
利用闪回、logmnr找回误删除的数据
2011-10-25 23:54 1257朋友遇到了非常经典的ORACLE事故——误删除,开发人员告诉他 ... -
ORACLE随机取数据
2011-10-25 23:53 917目前负责的这个数字化项目,需要开发个质检工具,实现每次随机取2 ... -
oracle将一行拆分为多行
2011-10-12 00:51 2139客户的业务涉及大量的图片信息,之前这些图片信息只在数据库里存着 ... -
ORA-01034、ORA-27101和ORA-28056错误解决方法
2011-10-11 00:40 2237今天登录数据库的时候遇到了ORA-01034和ORA-2710 ... -
查看某个用户下的所有空表
2011-10-09 15:01 1049今天在群里有人问如何 ... -
oracle10gR2新特性--透明加密(TDE)
2011-10-09 15:02 1945从10gR2开始,oracle推出了透明数据加密技术(Tran ... -
NAMES.DIRECTORY_PATH客户端连接参数
2011-10-08 22:38 3850今天在做oracle10gR2新特性透明加密(TDE)的时候, ... -
tnsping通却连接不上数据库
2011-10-08 22:26 2420今天在Windows XP上装可个11gR2数据库,却出现个很 ... -
ORACLE字符集检查工具CSSCAN
2011-10-08 22:22 1793我们在创建数据库的时候,通常会把字符集设置为ZHS16GBK, ... -
SQL*LOADER和外部表加载
2011-10-08 22:17 1328最近一直在用SQL*LOADER加载数据,用外部表也可以实现, ... -
创建本地Duplicate数据库
2011-10-08 22:14 1027Duplicate是RMAN的一个组成部分,利用Duplica ... -
由ACOUG、云和恩墨主办的”Oracle技术嘉年华(OTN China Tour 2011)“活动已经正式拉开帷幕。
2011-09-01 12:00 784由ACOUG、云和恩墨主办的”Oracle技术嘉年华(OTN ... -
enq: TX - row lock contention
2011-07-19 17:52 1122今天,收到客户的邮件说上周每天早上10点多,数据库都会有很多锁 ... -
ORA-600汇总(上)
2011-07-04 15:28 1269此文转载 http://space.itpub.net/135 ...
相关推荐
SQL*LOADER是ORACLE的数据加载工具,通常用来将操作系统文件迁移到ORACLE数据库中。SQL*LOADER是大型数据仓库选择使用的加载方法
控制文件是SQL*Loader里最重要的文件,它是一个文本文件,用来定义数据文件的位置、数据的格式、以及配置数据加载过程的行为,在sqlldr中以control参数指定控制文件。
SQL*Loader是Oracle提供的用于数据加载的一种工具,它比较适合业务分析类型数据库(数据仓库),能处理多种格式的平面文件,批量数据装载比传统的数据插入效率更高
与.ctl文件配合使用 sqlldr userid=qxt_log/dddddd@172.16.0.0:21111/gdttt control=C:\Users\yilin\Desktop\input_147.ctl errors=10000000 pause
SQL*Loader(SQLLDR)是Oracle的高速批量数据加载工具。这是一个非常有用的工具,可用于多种平面文件格式向Oralce数据库中加载数据。SQLLDR可以在极短的时间内加载数量庞大的数据。它有两种操作模式。 传统路径:...
SQL*LOADER是oracle的数据加载工具,在NT下sql*loader的命令为SQLLDR,在UNIX下一般为SQLLDR/SQLLOAD。通常用来将操作系统文件迁移到oracle数据库中。它是大型数据仓库选择使用的加载方法,因为它提供了最快速的途径...
使用SQLLDR导入数据 建表文件更新如下 create table pet_photo ( PHOTO_FLAG NUMBER(11), PHOTO_ID varchar2 (600), USER_ACCOUNT varchar2 (300), ALBUM_ID varchar2 (300), PHOTO_NAME varchar2 (300), ...
sql * loader是oracle的数据加载工具,通常用来将操作系统迁移到oracle数据库中,
涂抹ORACLE-第5章-SQLLoader 加载数据之一千零一十一个怎么办
SQL*Loader是Oracle数据库导入外部数据的一个工具.它和DB2的Load工具相似,但有更多的选择,它支持变化的加载模式,可选的加载及多表加载.
SQL*Loader(SQLLDR)是Oracle的高速批量数据加载工具。这是一个非常有用的工具,可用于多种平面文件格式向Oralce数据库中加载数据。今天看了申请了*loader的使用,自己小试了下,记录在这 1、假设要插入数据的表f...
包含sqlplus、exp、imp、wrc、sqlldr和SDK Package、JDBC Supplement Package...sqlldr: sqlldr 是 Oracle 的 SQL*Loader 工具,用于将外部数据加载到 Oracle 数据库中。它允许你从文本文件、CSV 文件等格式加载数据。
SQL*LOADER是ORACLE的数据加载工具,通常用来将操作系统文件(数据)迁移到ORACLE数据库中。SQL*LOADER是大型数据仓库选择使用的加载方法,因为它提供了最快速的途径(DIRECT,PARALLEL)
sqlload方法及控制文件实例 Dos 环境下使用SQl*Loader命令 加载 使用其它数据库的数据转移工具 Oracle 企业管理器中的数据加载功能具体的技术实现
第21章 用SQL*Loader加载数据 第22章 使用Data Pump导入和导出 第23章 访问远程数据 第24章 使用物化视图 第25章 使用Oracle Text进行文本搜索 第26章 使用外部表 第27章 使用回闪查询 第28章 回闪:表和数据库 第Ⅳ...
第23章 用sql*loader 加载数据 第24章 使用data pump export 和data pump import 第25章 访问远程数据 第26章 使用物化视图 第27章 使用oracle text 进行文本搜索 第28章 使用外部表 第29章 使用闪回...