SQLLoader7(只导入数据文件的其中几行记录)

数据文件:

D:\oracletest\test1.txt
1 SMITH CLERK 7902 1980-12-17 800 0 20
2 ALLEN SALESMAN 7698 1981-02-20 1600 300 30
3 WARD SALESMAN 7698 1981-02-22 1250 500 30
4 JONES MANAGER 7839 1981-04-02 2975 0 20
5 MARTIN SALESMAN 7698 1981-09-28 1250 1400 30
6 BLAKE MANAGER 7839 1981-05-01 2850 0 30
7 CLARK MANAGER 7839 1981-06-09 2450 0 10
8 SCOTT ANALYST 7566 1987-04-19 3000 0 20
9 KING PRESIDENT 1111 1981-11-17 5000 0 10
10 TURNER SALESMAN 7698 1981-09-08 1500 0 30
11 ADAMS CLERK 7788 1987-05-23 1100 0 20
12 JAMES CLERK 7698 1981-12-03 950 0 30
13 FORD ANALYST 7566 1981-12-03 3000 0 20
14 MILLER CLERK 7782 1982-01-23 1300 0 10

控制文件:

D:\oracletest\testSqlLdr3.ctl
LOAD DATA
INFILE ‘D:\oracletest\test1.txt‘
BADFILE ‘D:\oracletest\testSqlLdr3.bad‘
DISCARDFILE ‘D:\oracletest\testSqlLdr3.dsc‘
REPLACE
INTO TABLE emp2
FIELDS TERMINATED BY WHITESPACE
(EMPNO,ENAME,JOB,MGR,HIREDATE DATE "YYYY-MM-DD",SAL,COMM,DEPTNO)

导入方式:
以下测试的数据导入,使用的控制文件都是同一个。
1、从第5行开始导入 skip=4,使用skip参数跳过前边4行。
执行命令时加上参数:skip=N,即导入第N+1行后的所有文件。

D:\oracletest>sqlldr scott/tiger@orcl control=D:\oracletest\testSqlLdr3.ctl skip=4

SQL*Loader: Release 11.2.0.1.0 - Production on 星期一 12月 1 00:08:03 2014

Copyright (c) 1982, 2009, Oracle and/or its affiliates. All rights reserved.

达到提交点 - 逻辑记录计数 9
达到提交点 - 逻辑记录计数 10

查看导入结果:

SQL> select * from emp2;

EMPNO ENAME JOB MGR HIREDATE SAL COMM DEPTNO
---------- ---------- --------- ---------- ---------- ---------- ---------- ----------
5 MARTIN SALESMAN 7698 1981-09-28 1250 1400 30
6 BLAKE MANAGER 7839 1981-05-01 2850 0 30
7 CLARK MANAGER 7839 1981-06-09 2450 0 10
8 SCOTT ANALYST 7566 1987-04-19 3000 0 20
9 KING PRESIDENT 1111 1981-11-17 5000 0 10
10 TURNER SALESMAN 7698 1981-09-08 1500 0 30
11 ADAMS CLERK 7788 1987-05-23 1100 0 20
12 JAMES CLERK 7698 1981-12-03 950 0 30
13 FORD ANALYST 7566 1981-12-03 3000 0 20
14 MILLER CLERK 7782 1982-01-23 1300 0 10

已选择10行。

2、只导入其中的第3行至第10行记录
即:SKIP=2 LOAD=10---LOAD指定要导入的数据行数。

D:\oracletest>sqlldr scott/tiger@orcl control=D:\oracletest\testSqlLdr3.ctl skip=4 load=10

SQL*Loader: Release 11.2.0.1.0 - Production on 星期一 12月 1 00:09:46 2014

Copyright (c) 1982, 2009, Oracle and/or its affiliates. All rights reserved.

达到提交点 - 逻辑记录计数 9
达到提交点 - 逻辑记录计数 10

查看导入结果:

SQL> select * from emp2;

EMPNO ENAME JOB MGR HIREDATE SAL COMM DEPTNO
---------- ---------- --------- ---------- ---------- ---------- ---------- ----------
5 MARTIN SALESMAN 7698 1981-09-28 1250 1400 30
6 BLAKE MANAGER 7839 1981-05-01 2850 0 30
7 CLARK MANAGER 7839 1981-06-09 2450 0 10
8 SCOTT ANALYST 7566 1987-04-19 3000 0 20
9 KING PRESIDENT 1111 1981-11-17 5000 0 10
10 TURNER SALESMAN 7698 1981-09-08 1500 0 30
11 ADAMS CLERK 7788 1987-05-23 1100 0 20
12 JAMES CLERK 7698 1981-12-03 950 0 30
13 FORD ANALYST 7566 1981-12-03 3000 0 20
14 MILLER CLERK 7782 1982-01-23 1300 0 10

已选择10行。

3、前3行和最后2行不导入
相当于只导入从第4行至总行数减2行之间的数据,skip=2,load=9

D:\oracletest>sqlldr scott/tiger@orcl control=D:\oracletest\testSqlLdr3.ctl skip=4 load=9

SQL*Loader: Release 11.2.0.1.0 - Production on 星期一 12月 1 00:14:09 2014

Copyright (c) 1982, 2009, Oracle and/or its affiliates. All rights reserved.

达到提交点 - 逻辑记录计数 9

查看导入结果:

SQL> select * from emp2;

EMPNO ENAME JOB MGR HIREDATE SAL COMM DEPTNO
---------- ---------- --------- ---------- ---------- ---------- ---------- ----------
5 MARTIN SALESMAN 7698 1981-09-28 1250 1400 30
6 BLAKE MANAGER 7839 1981-05-01 2850 0 30
7 CLARK MANAGER 7839 1981-06-09 2450 0 10
8 SCOTT ANALYST 7566 1987-04-19 3000 0 20
9 KING PRESIDENT 1111 1981-11-17 5000 0 10
10 TURNER SALESMAN 7698 1981-09-08 1500 0 30
11 ADAMS CLERK 7788 1987-05-23 1100 0 20
12 JAMES CLERK 7698 1981-12-03 950 0 30
13 FORD ANALYST 7566 1981-12-03 3000 0 20

已选择9行。
时间: 2024-08-02 23:02:24

SQLLoader7(只导入数据文件的其中几行记录)的相关文章

如何使用navicat for mysql连接本地数据库,并且导入数据文件

如何使用navicat for mysql连接本地数据库,并且导入数据文件 1. 简介 navicat for mysql是一种数据库管理工具, 专门用于简化, 开发和管理MySQL.我们可以使用navicat for mysql来连接远程数据库,也可以连接本地数据库.使用这个工具,查看表的数据非常方便,也可以输入SQL命令来实现查询.但是输入创建表等命令就不是很方便了.好了,我们一起来看看怎么使用navicat for mysql 创建并查询数据库中的数据. 2. 连接数据库 首先,你得确认你

导入数据 文件太大 报错

在sql 文件头部,写入这几个信息即可 set global max_allowed_packet=100000000;set global net_buffer_length=100000;SET GLOBAL interactive_timeout=28800000;SET GLOBAL wait_timeout=28800000;

Exchange2013 SP1通过 EMS导出及导入PST数据文件

作为一个企业管理员,在很多情况下,需要将Exchange邮件服务器中的邮箱用户的数据库导出或者导入邮箱数据到Exchange服务器中国的邮箱数据库,原因有:1.满足合规性要求 可以出于发现目的将邮箱内容导出到 .pst 文件(您可以使用 New-MailboxExportRequest 将数据). 完成导出后,可以将内容导入到专用于合规性用途的邮箱.2.创建时间点邮箱快照 通过创建特定邮箱的快照,您就无需再为邮箱数据库保留整个备份集.3.将用户的 .pst 文件移至其邮箱或个人存档中   Mic

oracle数据库管理员简介、导入数据与导出数据

数据库管理员: sys和system的权限区别:sys:所有oracle的数据字典的基表和视图都存放在sys用户中,这些基表和视图对于oracle的运行时至关重要的,由数据库 自己维护,任何用户都不能手动更改,sys用户拥有dba.sysdba.sysoper角色或权限,是oracle权限最高的用户. system:用于存放次一级的内部数据,如oracle的一些特性或工具的管理信息,system用户拥有dba.sysdba角色或系统权 限. sys和system的登陆方式不同:sys用户必须以a

Oracle Data Pump 导出和导入数据

Data pump export/import(hereinafter referred to as Export/Import for ease of reading)是一种将元数据和数据导出到系统文件集/从系统文件集导入数据的服务端工具;导出的文件可以移动到其它服务器上,但只能使用impdp导入;使用前要先建立目录(directory)和授权: conn / as sysdba CREATE DIRECTORY PUMP_DIR AS '/u01/backup'; 创建后即可查询出目录信息,

DB2导入数据时乱码问题

1.由于导入import导入数据时乱码,一直找不到解决办法,于是就用load导入 LOAD后,发现某些表检查挂起( 原因码为 "1",所以不允许操作 SQLSTATE=57016 ) 解决办法:set integrity for xxxxxx immediate checked 2.表锁定(原因码为7) 解决办法:reorg table xxxx 3.去重 select distinct a.column from table1 as a inner join table2 as b

Oracle的表空间、数据文件、用户

每一个Oracle数据库都是由三种类型的文件组成:数据文件(Data File).日志文件(Log File)和控制文件(Control File).数据库的文件为数据库信息提供真正的物理存储.      每个数据库有一个或多个物理的数据文件.逻辑数据库结构(如表.索引等)的数据物理地存储在数据库的数据文件中,数据文件通常为*.dbf格式. 数据文件有下列特征: 1.一个数据文件仅与一个数据库联系: 2.一旦建立,数据文件只增不减: 3.一个表空间(数据库存储的逻辑单位)由一个或多个数据文件组成

HBase快速导入数据--BulkLoad

Apache HBase是一个分布式的.面向列的开源数据库,它可以让我们随机的.实时的访问大数据.但是怎样有效的将数据导入到HBase呢?HBase有多种导入数据的方法,最直接的方法就是在MapReduce作业中使用TableOutputFormat作为输出,或者使用标准的客户端API,但是这些都不非常有效的方法. Bulkload利用MapReduce作业输出HBase内部数据格式的表数据,然后将生成的StoreFiles直接导入到集群中.与使用HBase API相比,使用Bulkload导入

mysql数据库导入sql文件不成功

sqlyog导入数据文件问题,一直提醒: There was an error while executing a query. The query and the error message has been logged at: C:\Users\liang\AppData\Roaming\SQLyog\sqlyog.err. Please click on "Open Error File..." to open the error file. 解决方法如下: 在mysql的安装