概述
使用oracle的导入导出
下面这些在使用过程中经常使用到的.(以后加上调优的参数说明,SGA区,共享池,PGA,等等spfile里面的参数)
1.Export工具是一个导出程序
语法:
exp UserId/Password@数据库全局名file=DMP文件的目录 其它参数
获取帮助,敲入: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 UserId/Password@数据库全局名file=DMP文件的目录 其它参数
获取帮助,敲入: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’
appendInto 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
fields terminated by ','
( name char,
rank interger external,
birthday date “dd-mm-yyyy”
)
导入有界定符的文件(续)
再看一个例子(处理空字段):
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:testdateFile.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 SettingsAdministrator>sqlldr niegc/niegc control=f:testloader.ctl log=f:testaaaaaa.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:testbbb.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
最后
以上就是超帅往事为你收集整理的oracle数据如何导出trigger,Oracle数据库导入导出 详解的全部内容,希望文章能够帮你解决oracle数据如何导出trigger,Oracle数据库导入导出 详解所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复