知识大全 ORCLE导出大量数据到txt
Posted 文件
篇首语:人的知识愈广,人的本身也愈臻完善。本文由小常识网(cha138.com)小编为大家整理,主要介绍了知识大全 ORCLE导出大量数据到txt相关的知识,希望对你有一定的参考价值。
ORCLE导出大量数据到txt 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!
ORCLE导出大量数据到txt
方法一 使用SQLPlus的spool命令
操作步骤
新建一个脚本文件 存放起来 如D:\\spool sql 具体代码如下
?
Sql代码
set
echo
off
在用start命令执行一个sql脚本时 是否显示脚本中正在执行的SQL语句
set
feedback
off
是否显示当前sql语句查询或修改的行数
set
newpage none
会在页和页之间没有任何间隔
set
verify
off
set
pagesize
分多少页
?
set
term
off
在用spool命令将一个大表中的内容输出到一个文件中时 将内容输出在屏幕上会耗费大量的时间 设置set termspool off后 则输出的内容只会保存在输出文件中 不会显示在屏幕上 极大的提高了spool的速度
set
trims
on
将SPOOL输出中每行后面多余的空格去掉
set
linesize
设置屏幕显示行宽 默认
set
heading
off
禁止输出列标题
set
timing
off
默认为OFF 设置查询耗时 可用来估计SQL语句的执行时间 测试性能
set
numwidth
SPOOL D:\\aaa txt
select
UserTelNo ||
|| to_char(ReceiveTime
yyyy MM dd HH :MI:SS
) ||
|| UserContent ||
|| ReplyContent
FROM
LogSMSHall_Mutual
WHERE
rownum<= ;
SPOOL
OFF
注意如果有clob字段的话 最好用to_char函数进行转换
用sqlplus登录到oracle数据库
如果是在数据库本机 直接在命令行(WIN+R >CMD)窗口 输入 SQLPlus [用户名]/[密码] 即可
如果远程登录 在命令行中输入 SQLPlus [用户名]/[密码]@[数据库IP地址:监听端口号]/[数据库实例名称] 回车即可 如 sqlplus Ajita/ @ : /orcl
执行脚本文件
在SQLPlus命令窗口中执行步骤 中的脚本文件 命令方式为 @[脚本文件位置] 如 @D:\\spool sql
优点 简单易用
缺点 不容易封装成存储过程
方法二 使用UTL_FILE包的文件操作命令
操作步骤(只需要一步 也可以封装成存储过程)
编写PL/SQL过程 导出到txt即可
?
Sql代码
DECLARE
row_result varchar ( );
selectsql varchar ( );
qrycursor SYS_REFCURSOR;
txt_handle UTL_FILE file_type;
BEGIN
selectsql :=
select bizname ||
|| bizstatus from bizbusinessbaseinfo
;
txt_handle := UTL_FILE FOPEN(
D:/UTL
a txt
w
);
open
qrycursor
for
selectsql;
loop
fetch
qrycursor
into
row_result;
exit
when
qrycursor%notfound;
UTL_FILE PUT_LINE(txt_handle row_result);
end
loop;
关闭游标
close
qrycursor;
UTL_FILE FCLOSE(txt_handle);
end
;
注意事项
如果没有设置参数utl_file_dir参数 本方法会报ora 的错误 解决方案有两种
设置utl_file_dir参数 两种方式
a) 在init ora中设置 直接修改文件即可
b) 在sqlplus命令行设置
?
alter
system
set
utl_file_dir=* scope=spfile;
注意设置utl_file_dir的要点
utl_file_dir=* 这表示你能操作任何目录 尽量不要用
utl_file_dir=d:\\ 这表示你能操作d:\\目录下的文件 但你不能操作d:\\目录下的子目录
注意在设置 utl_file_dir=路径时 如果路径是长路径名 例如c:\\my temp目录 则你必须加上 例如 utl_file_dir= c:\\my temp
utl_file_dir可以是多个路径 utl_file_dir=c:\\ d:\\ d:\\temp c:\\my temp
设置完必须重新启动数据库
创建自己的目录(不需要重启数据库)
在命令行中执行命令create or replace directory MY_DIR as c:/abc ;即可 然后调用的时候 把frw:=utl_file fopen( c:\\abc emp txt w );改成frw:=utl_file fopen( MY_DIR emp txt w );注意MY_DIR要大写
优点 容易封装成存储过程
cha138/Article/program/Oracle/201311/18248相关参考
利用多个转储文件导出大量Oracle数据 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! Orac
如何向hadoop导入数据1.2使用Hadoopshell命令导入和导出数据到HDFS实验准备实例需要用到的数据-weblog_entries.txt在namenode创建2个文件夹用来存放实验用的数
知识大全 如何将 Access 数据导出到 Oracle 数据库中
如何将Access数据导出到Oracle数据库中? 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!
知识大全 利用SQL*Loader将 Excel 数据导出到 Oracle 数据库中
利用SQL*Loader将Excel数据导出到Oracle数据库中 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一
利用剪贴板实现高速导出数据到Excel 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! 在很多的时
ASP.NET导出数据到Excel的实现方法 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!在做as
Java中根据模板导出数据到word的解决方案 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! J
知识大全 以Oracle为例说明如何通过ODBC将数据库中的指定表导出到MDB数据库
以Oracle为例说明如何通过ODBC将数据库中的指定表导出到MDB数据库 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我
oracle数据库导出并重新导入 一导出数据库?将数据库TEST完全导出用户名scott密码tiger导出到D:\\testDBdmp中[plain]expscott/tiger@TESTf
mysqldump客户端可用来转储数据库或搜集数据库进行备份或将数据转移到另一个SQL服务器(不一定是一个MySQL服务器)转储包含创建表和/或装载表的SQL语句 如果你在服务器上进行备份并且表