zoukankan      html  css  js  c++  java
  • oracle学习之数据库数据保存成文件

    常常需要将数据库中的数据生成文档,由于比较喜欢脚本的方式,所以就需要使用spool的时候进行格式设置,以下简单整理了一下oracle中进行格式设置的一些东西,一共十八条,其实常用的也就那么几个,稍后会附上自己写的简单的shell操作的脚本,希望能供同样有需要的共同交流,也作为自己的备份。

    set命令的各项及其含义:
    arraysize 从数据库中一次提取的行数,默认为15
    autocommit 是否自动提交,默认为off
    colsep 在选定列之间的分隔符,默认为空格
    echo 在用start命令执行一个脚本文件时,echo命令用于控制是否显示脚本文件中正在执行的sql语句,默认为off
    feedback 当一个查询选择出至少n行记录时,就会在结果集的项显示返回的行数,默认是6
    heading 是否显示查询结果的列标题,默认为on
    headsep 指定后边的标点符号用于将页标签或列标题分行显示,默认为“|”
    linesize 每行显示的字符个数,即宽度,默认为80
    newpage 分隔页与页之间的空白行数
    pagesize 每页显示的行数,默认为14
    pause 每页输出时是否暂停,如设置了pause text,则会在左下角显示text
    serveroutput 是否显示pl/sql块或存储过程的输出,即允许函数DBMS_OUTPUT.PUT_LINE()的输出显示在屏幕上
    sqlprompt sqlplus的命令提示符,默认为“SQL>”
    time 是否在sqlplus命令提示符前显示系统的当前时间,默认为off
    timing 是否显示执行sql语句、pl/sql块的花费时间,默认为off
    trimspool 是否将spool输出中每行后边多余的空格,默认为off
    underline 下划线字符的符号,默认为“_”
    verify 交互使用替换变量是,是否列出一个sql语句在获得替换变量的值前后的文本内容,默认为on

    说明:
    设置某项xxx命令格式为:

    set xxx on/off/value

    举例: set timing on --设置显示执行sql语句、pl/sql块花费的时间

    set pagesize 100 --设置每页显示100行
    显示某项xxx命令格式为: show xxx
    举例: show timing --查看当前timing设置为on/off?

    show pagesize --显示当前设置的每页显示的行数
    一个例子:
    test.sql

    drop table test_tbl;

    create table test_tbl (id varchar2(6),name varchar2(30),score number(6));

    insert into test_tbl values(111111,'张三',85.5);
    insert into test_tbl values(222222,'李四',90);
    insert into test_tbl values(333333,'王五',75);

    spool off;
    set echo off;
    set trimspool on;
    set trimout on;
    set linesize 252;
    set pagesize 2000;
    set heading off;
    set term off;
    set feedback off;
    set newpage none;
    spool test.txt
    select id||'|'||name||'|'||score
    from test_tbl;
    spool off
    /

    
    

    在自己测试的结果如下:

    在test.sql文件所在目录下通过sqllus进入oracle执行test.sql脚本,在当前目录下生成一个test.txt文件,文件内容如下:



    参考文档:

    <<Oracle从入门到精通>> 水利水电出版社 钱慎一 张素智 2009.9 正文140页 章节:5.3.2
  • 相关阅读:
    BZOJ2530 : [Poi2011]Party
    BZOJ3998 : [TJOI2015]弦论
    BZOJ3941 : [Usaco2015 Feb]Fencing the Herd
    BZOJ3939 : [Usaco2015 Feb]Cow Hopscotch
    搬家啦~
    BZOJ3837 : [Pa2013]Filary
    使用Privoxy做智能代理切换
    放弃iOS4,拥抱iOS5
    让Xcode的 stack trace信息可读
    改进iOS客户端的升级提醒功能
  • 原文地址:https://www.cnblogs.com/wystan/p/5159012.html
Copyright © 2011-2022 走看看