Oracle sql loader使用例子

一、SQLLoader将 Excel 数据导出到 Oracle

1.创建SQL*Loader输入数据所需要的文件,均保存到C:\,用记事本编辑:

控制文件:input.ctl,内容如下:

load data           --1、控制文件标识

infile 'test.txt' --2、要输入的数据文件名为test.txt

append into table test    --3、向表test中追加记录

fields terminated by X'09'  --4、字段终止于X'09',是一个制表符(TAB)

(id,username,password,sj)   -----定义列对应顺序

a、insert,为缺省方式,在数据装载开始时要求表为空

b、append,在表中追加新记录

c、replace,删除旧记录,替换成新装载的记录

d、truncate,同上

在DOS窗口下使用SQL*Loader命令实现数据的输入

C:\>sqlldr userid=system/manager control=input.ctl

默认日志文件名为:input.log

默认坏记录文件为:input.bad

2.还有一种方法

可以把EXCEL文件另存为CSV(逗号分隔)(*.csv),控制文件就改为用逗号分隔

LOAD DATA

INFILE 'd:\car.csv'

APPEND INTO TABLE t_car_temp

FIELDS TERMINATED BY ","

(phoneno,vip_car)

二、在控制文件中直接导入数据

1、控制文件test.ctl的内容

-- The format for executing this file with SQL Loader is:

-- SQLLDR control=<filename> Be sure to substitute your

-- version of SQL LOADER and the filename for this file.

LOAD DATA

INFILE *

BADFILE 'C:\Documents and Settings\Jackey\桌面\WMCOUNTRY.BAD'

DISCARDFILE 'C:\Documents and Settings\Jackey\桌面\WMCOUNTRY.DSC'

INSERT INTO TABLE EMCCOUNTRY

Fields terminated by ";" Optionally enclosed by '"'

(

COUNTRYID       NULLIF (COUNTRYID="NULL"),

COUNTRYCODE,

COUNTRYNAME,

CONTINENTID NULLIF (CONTINENTID="NULL"),

MAPID NULLIF (MAPID="NULL"),

CREATETIME  DATE "MM/DD/YYYY HH24:MI:SS"    NULLIF (CREATETIME="NULL"),

LASTMODIFIEDTIME DATE "MM/DD/YYYY HH24:MI:SS" NULLIF (LASTMODIFIEDTIME="NULL")

)

BEGINDATA

1;"JP";"Japan";1;9;"09/16/2004 16:31:32";NULL

2;"CN";"China";1;10;"09/16/2004 16:31:32";NULL

3;"IN";"India";1;11;"09/16/2004 16:31:32";NULL

4;"AU";"Australia";6;12;"09/16/2004 16:31:32";NULL

5;"CA";"Canada";4;13;"09/16/2004 16:31:32";NULL

6;"US";"United States";4;14;"09/16/2004 16:31:32";NULL

7;"MX";"Mexico";4;15;"09/16/2004 16:31:32";NULL

8;"GB";"United Kingdom";3;16;"09/16/2004 16:31:32";NULL

9;"DE";"Germany";3;17;"09/16/2004 16:31:32";NULL

10;"FR";"France";3;18;"09/16/2004 16:31:32";NULL

11;"IT";"Italy";3;19;"09/16/2004 16:31:32";NULL

12;"ES";"Spain";3;20;"09/16/2004 16:31:32";NULL

13;"FI";"Finland";3;21;"09/16/2004 16:31:32";NULL

14;"SE";"Sweden";3;22;"09/16/2004 16:31:32";NULL

15;"IE";"Ireland";3;23;"09/16/2004 16:31:32";NULL

16;"NL";"Netherlands";3;24;"09/16/2004 16:31:32";NULL

17;"DK";"Denmark";3;25;"09/16/2004 16:31:32";NULL

18;"BR";"Brazil";5;85;"09/30/2004 11:25:43";NULL

19;"KR";"Korea, Republic of";1;88;"09/30/2004 11:25:43";NULL

20;"NZ";"New Zealand";6;89;"09/30/2004 11:25:43";NULL

21;"BE";"Belgium";3;79;"09/30/2004 11:25:43";NULL

22;"AT";"Austria";3;78;"09/30/2004 11:25:43";NULL

23;"NO";"Norway";3;82;"09/30/2004 11:25:43";NULL

24;"LU";"Luxembourg";3;81;"09/30/2004 11:25:43";NULL

25;"PT";"Portugal";3;83;"09/30/2004 11:25:43";NULL

26;"GR";"Greece";3;80;"09/30/2004 11:25:43";NULL

27;"IL";"Israel";1;86;"09/30/2004 11:25:43";NULL

28;"CH";"Switzerland";3;84;"09/30/2004 11:25:43";NULL

29;"A1";"Anonymous Proxy";0;0;"09/30/2004 11:25:43";NULL

30;"A2";"Satellite Provider";0;0;"09/30/2004 11:25:43";NULL

31;"AD";"Andorra";3;0;"09/30/2004 11:25:43";NULL

32;"AE";"United Arab Emirates";1;0;"09/30/2004 11:25:43";NULL

33;"AF";"Afghanistan";1;0;"09/30/2004 11:25:43";NULL

34;"AG";"Antigua and Barbuda";7;0;"09/30/2004 11:25:43";NULL

时间: 2024-12-23 16:09:21

Oracle sql loader使用例子的相关文章

学习oracle sql loader 的使用

oracle 学习oracle sql loader 的使用 一:sql loader 的特点oracle自己带了很多的工具可以用来进行数据的迁移.备份和恢复等工作.但是每个工具都有自己的特点. 比如说exp和imp可以对数据库中的数据进行导出和导出的工作,是一种很好的数据库备份和恢复的工具,因此主要用在数据库的热备份和恢复方面.有着速度快,使用简单,快捷的优点:同时也有一些缺点,比如在不同版本数据库之间的导出.导入的过程之中,总会出现这样或者那样的问题,这个也许是oracle公司自己产品的兼容

Oracle SQL*Loader详解(1) 总览

SQL*Loader原理 SQL*Loader是Oracle提供的用于数据加载的一种工具,它比较适合业务分析类型数据库(数据仓库 ),能处理多种格式的平面文件,批量数据装载比传统的数据插入效率更高.其示意图如下: 控制文件(Control File) (.ctl):用于控制数据导入的行为方式的文件(最重要的文件) 参数文件(可选)(Parameter File) (.par):可以把参数直接写在控制文件里,也可以单独写一个 参数文件 数据文件(Data Files) :放置源数据的平面文件(可以

Oracle SQL*Loader 使用指南(转载)

oracle SQL*Loader是Oracle数据库导入外部数据的一个工具.它和DB2的Load工具相似,但有更多的选择,它支持变化的加载模式,可选的加载及多表加载. 如何使用 SQL*Loader 工具 我们可以用Oracle的sqlldr工具来导入数据.例如: sqlldr scott/tiger control=loader.ctl 控制文件(loader.ctl) 将加载一个外部数据文件(含分隔符). loader.ctl如下: load data infile 'c:\data\my

使用Oracle sql loader批量导入数据

在性能测试中,有一项十分重要的准备工作就是准备测试数据.在进行性能测试之前,首先要保证测试数据库中有测试所需要的足够多的数据.对于数据的准备工作,有时候我会使用LoadRunner生成相应的脚本去准备数据,这样的做法有一个好处就是简便易行,然而它有一个很大的缺点就是效率太慢,当我们需要的数据量极大时,这样做是非常耗时间的,所以我觉得还需要掌握各种不同的技能来完成这个任务.以下就是我在前不久的一次测试中学到的经验: 使用oracle sql loader批量导入数据(在准备测试数据时很有用!) 生

Oracle SQL*Loader详解(3) 控制文件

控制文件是SQL*Loader里最重要的文件,它是一个文本文件,用来定义数据文件的位置.数据的格 式.以及配置数据加载过程的行为,在sqlldr中以control参数指定控制文件. 在控制文件里配置命令行参数 (OPTIONS) 在上一篇中我们讲过命令行参数可以配置在三个地方,其中一个就是可以使用控制文件的OPTIONS字 句(这也是最常用的方式),如下所示: OPTIONS (DIRECT=true, SILENT=(ERRORS, FEEDBACK) ) 更多的命令行参数,请见上一篇. 配置

Oracle SQL*Loader详解(2) 命令行参数

sqlldr工具 SQL*Loader的客户端工具是sqlldr,在操作系统的命令行下输入sqlldr,后面不接任何参数,将显 示帮助信息如下所示(所有命令行参数的简单描述及其默认值),所以你并不需要对下面的参数死记硬 背,当你忘记它们时,可以通过这个方式快速查询. Valid Keywords: userid -- ORACLE username/password control -- control file name log -- log file name bad -- bad file

Oracle中sql loader使用例子

一.SQLLoader将 Excel 数据导出到 Oracle 1.创建SQL*Loader输入数据所需要的文件,均保存到C:\,用记事本编辑: 控制文件:input.ctl,内容如下: load data --1.控制文件标识 infile 'test.txt' --2.要输入的数据文件名为test.txt append into table test --3.向表test中追加记录 fields terminated by X'09' --4.字段终止于X'09',是一个制表符(TAB) (

Oracle SQL*Loader详解(5) 典型例子

本文介绍SQL*Loader在实际使用过程中经常用到的典型例子. 1. 表中的列比数据文件的列要少怎么办? 假设一个csv的文件如下: a1,a2,a3,a4 b1,b2,b3,b4 c1,c2,c3,c4 d1,d2,d3,d4 总共4列,先要求只要第2.3列数据,怎么办呢?这时候,FILLER(注意:不是FILTER)参数派上用 场了,控制文件如下所示: load data infile 'data.csv' "str '\r\n'" into table test.test ap

Oracle SQL*Loader详解(4) 字段列表

在上一篇中我们介绍了SQL*Loader中最重要的文件--控制文件,而本篇要介绍控制文 件中最重要的部分--字段列表,字段列表的作用是把数据文件中的记录和数据库中表的列 对应起来,下面是字段列表的一个例子,本篇我们将一一讲解它们的意思. . . . 1 (hiredate SYSDATE, 2 deptno POSITION(1:2) INTEGER EXTERNAL(2) NULLIF deptno=BLANKS, 3 job POSITION(7:14) CHAR TERMINATED BY