ORACLE导入导出参数

 
下面这些在使用过程中经常使用到的.(以后加上调优的参数说明,SGA区,共享池,PGA,等等spfile里面的参数)
 
 

1.Export工具是一个导出程序

语法:
获取帮助,敲入:exp help=y
 
 
Export常用的参数(1)
Direst 选择是否采用直接路径导出
File 指定导出文件名
Full Full=Y 将整个数据库导出
Incremental 导出上次 Incremental Cumulative Complete 导出而改变的所有对象
Cumulative 导出上次 Cumulative Complete 导出后改变的所有对象
Complete 导出所有的对象
Indexes 指定索引是否被导出
Export常用的参数(2)
Log 指定日志的文件名
Owner 允许为指定的用户导出对象
Parfile 允许从一个文件读取导出参数
Query 指定从表中导出符合条件的行
Record 指定是否在导出系统表中记录 Incremental Cumulative 导出,默认为 Y
Rows 控制表数据是否被导出
Tables 允许导入一个或多个表
Triggers 指定触发器是否和表一起导出
 
 
2.Import 工具是一个导入程序
语法:
获取帮助,敲入:imp help=y
Import常用的参数(1)
File 指定导入文件名
Fromuser 允许导入指定的用户拥有的表
Full full=Y 时,导入 DMP 文件中所有的事物
Ignore Y 时,如果数据出错,将继续下一行数据
Indexes 是否导入索引
Log 指定日志文件
Parfile 指定从文件中读导出参数
Rows 指定是否导入表的数据
Import常用的参数(2)
Show 指定显示全部要被执行的参数
Tables 指定导入一个或多个表
Touser 指定导入到哪个用户名下
Userid 指定导入的用户的用户名和密码
 
 
3.SQL*Loader 简介
SQL*Loader从文本文件导数据到数据库中。功能包括:
从定界文件装数据
从固定长度的文本文件装数据
从二进制文件装数据
在输入文件中过滤数据
SQL*Loader使用的数据类型
Char:该char和数据库中的char类型不同,它包括数据库中的char、varchar、CLOB等类型
Date:时间类型
Interger external:定义整数值
Decimal external:定义包括小数点的数值
 
装载字段固定长度的文件
一个例子:
Load data
   infile ‘yyb_data.txt’
   append
Into table emp
(  name position(1:10) char,
    rank position(11:13) interger external,
    birthday position(13:23) date “dd-mm-yyyy”
)
导入有界定符的文件
一个例子:
Load data
   Infile ‘c:/yyb.txt’
   append
Into table emp
( name char terminated by ‘,’,
   rank interger external terminated by ‘,’,
   birthday date “dd-mm-yyyy” terminated by ‘,’
)
导入有界定符的文件 (续)
再看一个例子(处理空字段):
Load data
   Infile ‘c:/yyb.txt’
   append
Into table emp
   trailing nullcols
( name char terminated by ‘,’,
   rank interger external terminated by ‘,’,
   birthday date “dd-mm-yyyy” terminated by ‘,’ )
如何把数据放到表中
从前面的例子中可以看出,它们都包含关键字 append ,还有其它的关键字:
Insert :指定要装载的是空表,否则失败
Append :添加数据到表,即使表中有数据
Replace :加载前,将删除表中的所有数据
Truncate :与 replace
使用SQL*Loader命令和参数
命令语法为:
  sqlldr [param=value [,param= valus … ] ]
参数:
Userid 用户名和密码
Control 指定控制文件名,也就是存放前面的胶片中的代码的文件
Log 指定日志文件名
Bad 指定存放坏记录的文件名
SQL*Loader参数(续前)
Data 指定数据文件名
Skip 允许跳过的记录数量
Load 允许装入的记录数量
Errors 指定允许的错误数
Rows 指定装载多少条记录提交一次
Direct 可以指定为直接路径装载
Parfile 指定包含命令参数的文件名
 
 
 
举个例子来说明:
(1)先创建一张表:
 
create table test_load(
stu_num number(10,0),
stu_name varchar2(50),
stu_date date
)
 
 
(2)准备数据文件(可以采用spool导出,再下来会讲到): dateFile.txt
 
"1234","niegc","2006-01-01"
"1235","ngc","2006-01-02"
 
 
(3)写控制文件(必须注意每一个字段的位置,和时间字段的格式):loader.ctl
 
Load data
infile 'F:/test/dateFile.txt'
Append into table test_load
fields Terminated by "," Optionally enclosed by'"'
(
stu_num,
stu_name,
stu_date date "YYYY-MM-DD"
)
 
(3)执行sqlldr
 
C:/Documents and Settings/Administrator>sqlldr niegc/niegc control=f:/test/loader.ctl log=f:/test/aaaaaa.log
SQL*Loader: Release 9.2.0.1.0 - Production on 星期三 4月 26 22:06:35 2006
Copyright (c) 1982, 2002, Oracle Corporation.  All rights reserved.
达到提交点,逻辑记录计数2
 
成功了,是不是很简单,append 还是insert  上面有说明的哦.
 
 
4.Spool简介
spool 是数据的导出命令,最简单的执行如下:
用sqlplus 登陆:
SQL>spool f:/test/bbb.txt
SQL> select * from test_load;
   STU_NUM STU_NAME                                           STU_DATE
---------- -------------------------------------------------- ----------
      1234 niegc                                              01-1月 -06
      1235 ngc                                                02-1月 -06
SQL> spool off
 
这样就可以导出了
如果你想导出自己定义的格式,你可以先set 参数然后再spool
例如:
SET COLSEP ' '
SET ECHO OFF
SET FEEDBACK OFF
SET HEADING OFF
SET PAGESIZE 0
SET LINESIZE 1000
SET NUMWIDTH 12
SET TERMOUT OFF
SET TRIMOUT ON
SET TRIMSPOOL ON
 
 
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值