【IT专家】转载:利用sqluldr2导出数据和sqlldr导入数据的方法

转载:利用 sqluldr2 导出数据和 sqlldr 导入数据的方法

Oracle 数据导出工具 sqluldr2 可以将数据以 csv、txt 等文件格式导出,适用于

大批量数据的导出,导出速度非常快,导出后可以使用 Oracle SQL Loader 工具将数

据导入到数据库中。下面将介绍 Sqluldr2 和 sqlldr 在 Windows 平台下的数据处理过

程。 当集成 sqluldr2 在脚本中时,就希望屏蔽上不输出这些信息,但又希望这些信

息能保留,这时可以用“LOG”选项来指定日志文件名。

sqluldr2test/test@127.0.1.1/orcl sql=test_sql.sql head=yes file=d:\tmp001.csv

log=+d:\tmp001.log 当使用 table 参数时,在目录下会生成对应的 ctl 控制文件,如

下语句会生成 temp_001_sqlldr.ctl 文件。 sqluldr2test/test@127.0.1.1/orcl

query=“select * from temp_001” table=temp_001 head=yes file=d:\tmp001.csv 在指定分

隔符时,可以用字符的 ASCII 代码(0xXX,大写的 XX 为 16 进制的 ASCII 码值)

来指定一个字符,常用的字符的 ASCII 代码如下: 在选择分隔符时,一定不能选

择会在字段值中出现的字符组合,如常见的单词等,很多次导入时报错,回过头来

找原因时,都发现是因为分隔符出现在字段值中了。 characterset :字符集, 一般

使用字符集 AL32UTF8,如果出现中文字符集乱码时,改成 ZHS16GBK。 fields

terminatedby ‘string’:文本列分隔符。当为 tab 键时,改成’\t’,或者 X’09’;空格分

隔符 whitespace,换行分隔符 ‘\n’ 或者 X’0A’;回车分隔符 ‘\r’ 或者 X’0D’;默

认为’\t’。 optionally enclosed by ‘char’:字段包括符。当为 ‘ ‘ 时,不把字段包括在

任何引号符号中;当为 “‘“ 时,字段包括在单引号中;当为’”‘时,字段在包括双引

号中;默认不使用引用符。 sqlldrtest/test@127.0.1.1/orcl data=d:\tmp_insert.txt

control=d:\tmp_insert01.ctl log=d:\tmp_insert01.log bad=d:\tmp_insert01.bad 注意:在

数据导入数据库表后,查询表数据时,会发现最后一个字段的数据中含有类似空格

的字符,其实不是空格,是回车换行符,通过 replace 函数将其替换掉即可,如下红

色部分处理 6、常见错误示例 SQL*Loader-601: For INSERT option, table must be

empty.这时需要,更改为追加(append)方式加载数据。创建控制文件

tmp_insert01.ctl,内容如下:

合集下载

SQL数据库数据导出方法

SQL数据库数据导出方法

SQL数据库数据导出方法

1、 开始→程序→Microsoft SQL Server→企业管理器;

2、 单击数据库SCBH前面的加号,单击表图标,在右边打开的窗口里面,在空白处点右键,选择:所有任务→导出数据,出现如下视图

3、点击下一步:出现如下视图

4、点击下一步:出现如下视图

5、在目的对话框中选择要导出的文件类型,(下面以文本文件为例)选择文本文件,出现如下视图:

6、单击文件名后面的按钮,出现如下对话框:

输入文件名称,单击保存,将出现下面的页面:

7、单击下一步,出现如下界页,选择“用一条查询指定要输出的数据”,然后单击下一步

8、在出现的下面界面上,单击“查询生成器”

出现如下界面

选择表T_Product→Coding单击向右的箭头添加到右边的对话框中,然后点击下一步

9、在出现的如下界面直接单击下一步:

在出现的下面界面中选择“只有满足条件的行”

在列对话框中选择“[T_Product].[PlannerID],运算符选择“=”号,单击值/列后面的按钮,在出现的界面中选择要输入的计划编号(如下图:)

然后单击下一步,出现如下界面,直接单击下一步

10、在出现的下面界面中选择“固定字段,信息以等宽按列对齐”

单击下一步:出现如下界面

单击下一步,出现如下界面:

单击完成,出现如下界面:

单击确定→完成

11、这样即完成了数据的导出,导入到其它文件方法基本相同!

SQLload

SQLload

SQLload

sqlload是oracle提供的批量导⼊⽂件数据的⼯具

1、在导⼊先,先根据数据建表。

2、执⾏sqlldr命令sqlldr userid=username/password control =*.tl --要在ctl⽂件的⽬录下执⾏

3、编写ctl⽂件for example:load datainfile 'F:\STUDY\6.1\CELLPORT_20161124143843_exp_1.csv' --加载的⽂件infile 'F:\STUDY\6.1\CELLPORT_20161124143843_exp_2.csv' --加载的⽂件

into table cellport --⽬标表when port_status='空闲' --可以设置条件筛选数据FIELDS TERMINATED BY ',' --设置分隔符,这⾥分隔符⽯,OPTIONALLY ENCLOSED BY '"' --设置结束符,也可以不设置,除⾮数据很⼯整,否则最好设置 TRAILING NULLCOLS --设置空数据也,加载。( --下⾯是表的字段,对每个字段还可以使⽤sql函数,进⾏⼀些计算或者格式转换等等,city,house_name "upper(:house_name)", --使⽤函数houes_type,house_jd,houese_wd,eq_name,eq_range,eq_location,eq_fgb,eq_port,port_status,port_type,OLT,OLT_PON ,NUMBER_209 , -- DL_TIMESTAMP date 'yyyy-mm-dd hh24:mi:ss' --时间转换)

1.什么是*.csv,如何得到?

⾥⾯存放的是数据表.每⾏代表数据库表格的⼀⾏,

每⾏中,每两个数据中间由逗号","分割.*.csv可以通过"将excel⽂件另存为*.csv"得到.

Oracle导入导出.sql、.dmp文件

Oracle导入导出.sql、.dmp文件

Oracle导⼊导出.sql、.dmp⽂件

Oracle导出导⼊表(.sql、.dmp⽂件)两种⽅法

提⽰:在导⼊sql和dmp⽂件之前,先建⽴⽤户,指明表空间。其中要注意⽤户名和表空间最好跟sql⽂件中的⼀样。 ⽅法⼀:.sql⽂件的导出与导⼊

导出步骤

1. 使⽤PL/SQL Developer登录你需要备份的数据库;

2. 选择⼯具->导出⽤户对象;

3. 在对象列表中选择需要备份的对象,再选择⼀个sql类型的输出⽂件,点击【导出】,这只是导出数据结构;

4. 选择⼯具->导出表;

5. 在列表中选择需要导出数据的表,再选择【SQL插⼊】,选择⼀个sql类型的⽂件,点击【导出】,这⼀步是把数据导出数据库。

6. 这样就得到两个sql,分别是备份数据结构和备份数据的。

导⼊步骤

在plsql⼯具⾥点击File-new-command window 将两个.sql⽂件语句分别粘贴进去执⾏两次

⽅法⼆:.dmp⽂件的导出与导⼊

1. 导出表结构:

expdp system/admincss@WSYDBSPT directory=DATA_PUMP_DIR schemas=hx_xt dumpfile=WSYDBS.dmp

注:system/admincss@WSYDBSPT管理员⽤户名密码、数据库服务名 ,directory=DATA_PUMP_DIR(通过select * from dba_directories查询), schemas=hx_xt从该⽤户名下导出表结构数据 2. 导⼊表结构

1) Impdp system/admincss@WSYDBSPT directory=DATA_PUMP_DIR schemas=hx_xt dumpfile=WSYDBS.dmp

2) Impdp system/admincss@xxbspt directory=DATA_PUMP_DIR dumpfile=xxbspt20180129.dmp full=y(全导)

oracle sqluldr用法

oracle sqluldr用法

- 1 - oracle sqluldr用法

OracleSQL*Loader的用法是将大量数据从外部文件加载到Oracle数据库中。SQL*Loader是一个命令行工具,使用其语法基于控制文件和数据文件来加载数据。要使用SQL*Loader,必须创建一个控制文件,其中包含数据文件的描述,以及数据如何被加载到表中的说明。以下是SQL*Loader的一些用法:

1.控制文件

控制文件是SQL*Loader的核心组件。它描述了要加载的数据文件的结构和格式。控制文件包含以下信息:

- 数据文件的名称和位置

- 数据字段的名称和类型

- 数据字段的分隔符和引用符

- 数据加载的表和列名称

2.数据文件

SQL*Loader使用数据文件将数据加载到数据库中。数据文件必须与控制文件结构相匹配。数据文件的格式可以是文本文件、定长文件或可分隔文件。

3.数据加载

使用SQL*Loader加载数据时,必须指定控制文件和数据文件的名称和位置。以下是一个例子:

sqlldr control=mycontrol.ctl data=mydata.dat

log=mylog.log - 2 - 该命令将加载mydata.dat文件中的数据到数据库中,并将日志记录到mylog.log文件中。

4.高级特性

SQL*Loader还支持高级特性,如并行加载、条件加载和转换数据。这些特性可以提高加载数据的效率和灵活性。

总之,Oracle SQL*Loader是一个强大的工具,可用于快速加载大量数据到Oracle数据库中。掌握其用法可以帮助开发人员提高数据处理的效率和质量。

sqlloader的用法

sqlloader的用法

sqlloader的用法

sqlldr userid=system/password control=h:control.txt

userid是用户名和密码,control是控制文件位置。

下面是控制文件中的内容:

load data

infile 'h:bbb.txt' --文本文件的位置

append into table table_name ---#1

FIELDS TERMINATED BY ',' ----字段和字段之间的分隔符,如果使用X'09'代表是tab,是否是tab没有测试。

TRAILING NULLCOLS ------表的字段没有对应的值时允许为空

(field1,field2,field3) ---具体入库的表字段

#1。这里可以使用append、insert、replace和truncate,每个参数具体意义如下:

APPEND 原先的表有数据 就加在后面

INSERT 装载空表 如果原先的表有数据 sqlloader会停止 默认值

REPLACE 原先的表有数据 原先的数据会全部删除

TRUNCATE 指定的内容和replace的相同 会用truncate语句删除现存数据

用sqlloader也可以一次导入多个表中

只要多加几个into就可以了,具体用法和insert的插入多个表用法类似。

入库的时候格式化也是可以的,可以参照外部表那篇文章。

用法二:

数据文件:test1.txt

SYSTEM , 40960

SYSTEM , 40960

SYSTEM , 323649536

SYSTEM , 81920

oracle sqlunldr 批量导出文件语法

oracle sqlunldr 批量导出文件语法

oracle sqlunldr 批量导出文件语法

`sqlldr` 是 Oracle 数据库中的一个实用程序,用于将数据从文本文件加载到 Oracle 表中。以下是使用 `sqlldr` 进行批量导出数据的基本语法:

SQL*Loader 导出语法:

```bash

sqlldr /@ \

CONTROL= \

LOG= \

BAD= \

DATA= \

DISCARD= \

[DIRECT=TRUE] \

[PARALLEL=TRUE] \

[SKIP=]

```

- `/`: 数据库用户名和密码。

- ``: 数据库连接串。

- `CONTROL=`: 控制文件,定义了数据的格式、表名、字段映射等。

- `LOG=`: 导出日志文件。

- `BAD=`: 错误记录文件,记录导出时出现错误的数据。

- `DATA=`: 数据文件,包含要导出的数据。

- `DISCARD=`: 丢弃文件,记录被丢弃的数据。

- `DIRECT=TRUE`: 使用直接路径加载(Direct Path Load)。

- `PARALLEL=TRUE`: 启用并行加载。

- `SKIP=`: 跳过指定行数的数据。

控制文件(Control File)示例:

控制文件是一个文本文件,定义了数据的格式、表名、字段映射等信息。以下是一个简单的控制文件示例:

```sql

LOAD DATA

INFILE 'data.txt' -- 数据文件

APPEND -- 在表中追加数据

INTO TABLE employees -- 目标表名

FIELDS TERMINATED BY ',' -- 字段分隔符

TRAILING NULLCOLS -- 忽略空列

( emp_id INTEGER EXTERNAL,

emp_name CHAR(50),

oracle数据的导入导出(两种方法三种方式)

oracle数据的导⼊导出(两种⽅法三种⽅式)

⼤概了解数据库中数据的导⼊导出。在oracle中,导⼊导出数据的⽅法有两种,⼀种是使⽤cmd命令⾏的形式导⼊导出数据,另⼀种是使⽤PL/SQL⼯具导⼊导出数据。

1,使⽤cmd命令⾏导⼊导出数据

1.1整库导出

整库导出:exp 管理员账号/密码 full=y;//参数full表⽰整库导出。导出后会在当前⽬录下⽣成⼀个EXPDAT.DMP的⽂件,此⽂件为备份⽂件。如果想导出数据到指定位置,并且取个名字,需要添加file参数。例如:exp system/123456 file= C:\person.dmp full=y。

1.2整库导⼊

整库导⼊:imp 管理员账号/密码 full=y file=C:\person.dmp。

1.3使⽤cmd命令按⽤户导出导⼊

1.3.1 按⽤户导出:exp 管理员账号/密码 owner=⽤户名 file=C:\person.dmp。

1.3.2 按⽤户导⼊:imp 管理员账号/密码 file=C:\person.dmp fromuser=⽤户名。

1.4使⽤cmd命令按表导出导⼊

1.4.1按表导出:exp 管理员账号/密码 file=person.dmp tables=t_person,t_student。

1.4.2按表导⼊:imp 管理员账号/密码 file =person.dmp tables=t_person,t_student。2.)使⽤PL/SQL 开发⼯具导出导⼊数据

pl/sql⼯具包含三种⽅式导出oracle表结构和表数据,分别为:oracle export,SQL inserts,pl/sql developer。它们的含义如下:

第⼀种oracle export:导出的是.dmp格式的⽂件,.dmp⽂件是⼆进制⽂件,可以跨平台,包含权限等。

第⼆种SQL inserts :导出的是.sql格式的⽂件,可以⽤⽂本编辑器查看,通⽤性⽐较好,效率不如第⼀种,适合⼩数据量的导⼊导出。需要注意的是表中不能有⼤字段(blob,clob,long)如果有则不能导出。

利用PLSQL从Oracle数据库导出和导入数据

利⽤PLSQL从Oracle数据库导出和导⼊数据

本⽂实例为⼤家分享了使⽤PL/SQL从Oracle数据库导出和导⼊数据的⽅法,供⼤家参考,具体内容如下1.导出数据:

⽅式⼀:⼯具—>导出⽤户对象—>导出.sql⽂件 注:这种⽅式导出的是建表语句和存储过程语句

⽅式⼆:⼯具—>导出表

注: 这⾥是导出表的结构和数据

第⼀种⽅式导出.dmp格式的⽂件,.dmp是⼆进制⽂件,可跨平台,还能包含权限,效率不错,⽤的最为⼴泛。

第⼆种⽅式导出.sql格式的⽂件,可⽤⽂本编辑器查看,通⽤性⽐较好,效率不如第⼀种,适合⼩数据量导⼊导出。尤其注意的是表中不能有⼤字段(blob,clob,long),如果有,会提⽰不能导出(提⽰如下: table contains one or more LONG columnscannot export in sql format,user Pl/sql developer format instead)。

第三种⽅式导出.pde格式的⽂件,.pde为PL/SQL Developer⾃有的⽂件格式,只能⽤PL/SQL Developer⼯具导⼊导出,不能⽤⽂本编辑器查看。

2. 数据导⼊(Tools→Import Tables…)

1.导⼊.dmp类型的oracle⽂件。

2.导⼊.sql类型的oracle⽂件。

3.导⼊.pde类型的oracle⽂件。

以上就是本⽂的全部内容,希望对⼤家的学习有所帮助,也希望⼤家多多⽀持。

sqlldr参数详解

sqlldr参数详解

sqlldr详解

Oracle 的SQL*LOADER可以将外部数据加载到数据库表中。下⾯是SQL*LOADER的基本特点:

1)能装⼊不同数据类型⽂件及多个数据⽂件的数据

2)可装⼊固定格式,⾃由定界以及可度长格式的数据

3)可以装⼊⼆进制,压缩⼗进制数据

4)⼀次可对多个表装⼊数据

5)连接多个物理记录装到⼀个记录中

6)对⼀单记录分解再装⼊到表中

7)可以⽤ 数对制定列⽣成唯⼀的KEY

8)可对磁盘或 磁带数据⽂件装⼊制表中

9)提供装⼊错误报告

10)可以将⽂件中的整型字符串,⾃动转成压缩⼗进制并装⼊列表中。

1.2控制⽂件

控制⽂件是⽤⼀种语⾔写的⽂本⽂件,这个⽂本⽂件能被SQL*LOADER识别。SQL*LOADER根据控制⽂件可以找到需要加载的数据。并且

分析和解释这些数据。控制⽂件由三个部分组成:l 全局选件,⾏,跳过的记录数等;

l INFILE⼦句指定的输⼊数据;

l 数据特性说明。

1.3输⼊⽂件

对于 SQL*Loader, 除控制⽂件外就是输⼊数据。SQL*Loader可从⼀个或多个指定的⽂件中读出数据。如果 数据是在控制⽂件中指定,就要

在控制⽂件中写成 INFILE * 格式。当数据固定的格式(长度⼀样)时且是在⽂件中得到时,要⽤INFILE "fix n"load data

infile 'example.dat' "fix 11"

into table example

fields terminated by ',' optionally enclosed by '"'

(col1 char(5),

col2 char(7))

example.dat:

001, cd, 0002,fghi,

00003,lmn,

1, "pqrs",

0005,uvwx,

当数据是可变格式(长度不⼀样)时且是在⽂件中得到时,要⽤INFILE "var n"。如:load data

infile 'example.dat' "var 3"

【IT专家】使用plsql将oracle数据库中的数据库结构和数据导出与导入

本文由我司收集整编,推荐下载,如有疑问,请与我司联系

使用 plsql 将 oracle 数据库中的数据库结构和数据导出与导入

2013/03/19 0 ======导出数据

1、打开 plsql 选择 myobject

2、工具---》导出用户对象:导出数据结构----表结构等等

3、工具---》导出表:可以导出所有数据;

======导入数据

1、工具---》导入表:

1 tools- import tables- SQL Inserts 导入.sql 文件。

2 tools- import talbes- Oracle Import 然后再导入 dmp 文件。

一些说明:

Tools- Export User Objects 导出的是建表语句(包括存储结构)。

Tools- Export Tables 里面包含三种导出方式,三种方式都能导出表结构以及数

据,如下:

Oracle ExportSql Insertpl/sql developer 第一种是导出为.dmp 的文件 式,.dmp 文件

是二进制的,可以跨平台,还能包含权限,效率也很不错,用得最广 。

第二种是导出为.sql 文件的,可用文本编辑器查看,通用性比较好,但效率不如

第一种,适合小数据量导入导出。尤其注意的是表中不能有大字段

(blob,clob,long),如果有,会提示不能导出(提示如下: table contains one or more

LONG columns cannot export in sql format,user Pl/sql developer format instead)。

第三种是导出为.pde 式的,.pde 为 Pl/sql developer 自有的文件 式,只能用 Pl/sql

developer 自己导入导出,不能用编辑器查看。

tips:感谢大家的阅读,本文由我司收集整编。仅供参阅!

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
相关文档
最新文档