常常需要将数据库中的数据生成文档,由于比较喜欢脚本的方式,所以就需要使用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文件,文件内容如下:
转载自:https://www.cnblogs.com/wystan/p/5159012.html
标签:
oracle
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· AI与.NET技术实操系列:基于图像分类模型对图像进行分类
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 25岁的心里话
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· ollama系列01:轻松3步本地部署deepseek,普通电脑可用
· 按钮权限的设计及实现