SQL*Plus连接符拼接输出

时间:2021-09-29 09:37:42
在日常工作中,可能需要使用重复的命令,修改的只是某个不同字段的值,可以使用连接字符串进行拼接

#本篇文档:

一、使用连接符拼接SQL

二、Spool输出查询结果

三、Spool输出xml/  html格式内容

1.1连接符

举例A:对某个用户下的表进行drop

>select 'Drop table '||owner||'.'||table_name||';' from dba_tables where owner='HR'
and table_name not in('EMPLOYEES','DEPARTMENTS'); 'DROPTABLE'||OWNER||'.'||TABLE_NAME
----------------------------------------------------
Drop table HR.LOCATIONS;

1.2连接符's  特殊用法

>select 'department name '||department_name||q'['s sal is]'||salary||';' from hr.employees e,hr.departments d where e.DEPARTMENT_ID=d.DEPARTMENT_ID;

department name Administration's sal is4400;
department name Marketing's sal is13000;

2,1 Spool内容

参数:

set heading off           设置显示列名:查询的显示字段名称取消

set feedback off         设置显示“ 已选择行”:最后显示的查询行结果取消

Spool

查询结果输出到一个文件:可以进行编辑,粘贴,使用:

spool /home/oracle/drop_hr_table.sql

select 'Drop table '||owner||'.'||table_name||';' from dba_tables where owner='HR'
and table_name not in('EMPLOYEES','DEPARTMENTS'); >spool off

More Spool

[oracle@sh ~]$ more drop_hr_table.sql

01:20:39 SYS@env >select 'Drop table '||owner||'.'||table_name||';' from dba_tables where owner='HR' 01:20:41   2   and table_name not in('EMPLOYEES','DEPARTMENTS');

Drop table HR.LOCATIONS;                                                                                                

Drop table HR.JOBS;
#有一个缺陷:如上查询有执行的sql语句

2.2 Spool 输出xml/hrml格式内容        --采用盖国强老师书籍学习

参数:

linesize 行长度200

term  是否显示输出内容

verify   输出变量内容

feedback 返回的记录行数量

markup html  输出html格式内容

main.sql 设置环境,调用具体执行脚本

set linesize 200

set term off verify off feedback off pagesize 999

set markup html on entmap on spool on preformat off

spool tables.xls

@get_tables.sql

spool off

exit

get_tables.sql具体执行脚本

select owner,table_name,tablespace_name,blocks,last_analyzed from all_tables order by 1,2;

执行:

sqlplus "/ as sysdba" @main
 
 
#以上是XML格式:修改sppol table.xls  修改为html则输出html格式
$ cp main.sql main.html

$ vi main.html

spool tables.html

#执行

sqlplus "/ as sysdba" @main.html
#显示输出分隔符号
SQL> set colsep |

SQL> select username,password,default_tablespace from dba_users

USERNAME  |PASSWORD  |DEFAULT_TABLESPACE

----------|----------|------------------------------

PERFSTAT  |          |STATSPACK

SQL*Plus连接符拼接输出的更多相关文章

  1. 优化php代码 - 字符串echo输出 逗号也可作php连接符

    2016年12月12日10:00:16 ====================== 网页访问速度的提升,是可以通过代码的优化来实现的.代码的优化,并不是说代码越少越好,而是主要看代码的运行能力和执行 ...

  2. ASP.NET实现列表页连接查询 拼接sql语句 绑定grivdView

    ASP.NET实现列表页连接查询 拼接sql语句 如图效果: 基本需求:1.当页面第一次加载的时候默认查询一个月时间(或者说是登陆者所属权限的所有数据)的数据绑定到gridView 2.添加查询条件时 ...

  3. 数据库学习(三) sql语句中添加函数 to_char,round,连接符||

    ** to char 是把日期或数字转换为字符串  to date 是把字符串转换为数据库中得日期类型  参考资料:https://www.cnblogs.com/hllnj2008/p/533296 ...

  4. 关于javascript的"+="连接符

    今天在读<javascript Dom 编程艺术>的时候,看到了自己感觉陌生的+=连接符(小白一枚,各位勿耻笑) "+="连接符,可以看成完成一次“加法和赋值”(或者“ ...

  5. SQL - 内连接与外连接

    PDF下载地址:SQL-内连接与外连接.pdf 连接查询在关系型数据库中经常用到,是多表联合查询的基础. 主要包含:内连接,外连接,交叉连接. SQL - 内连接与外连接 内连接 等值连接 不等值连接 ...

  6. JavaScript-join连接符

    1.转字符串:2种 1.将数组中每个元素都转为字符串,再用逗号分隔:var str=String(arr); 2.将数组中每个元素都字符串,再用自定义下标连接每个元素 var str=arr.join ...

  7. shell script的连接符是逗号,不是英文的句号

    举个例子: gawk 'BEGIN{ var[ var[ var[ var[ asort(var,test) for(i in test) print ] }' 这时候敲回车就能输出 Index: - ...

  8. ASP中双引号单引号和&amp&semi;连接符使用技巧

    ASP中双引号单引号和&连接符使用技巧 一.ASP中处在双引号中的可以是任意的字符.字符串,HTML代码 1.<%response.write ("I am here&quot ...

  9. c&sol;c&plus;&plus;中宏定义&num;&num;连接符 和&num;符的使用

    C语言中如何使用宏C(和C++)中的宏(Macro)属于编译器预处理的范畴,属于编译期概念(而非运行期概念).下面对常遇到的宏的使用问题做了简单总结.关于#和##在C语言的宏中,#的功能是将其后面的宏 ...

随机推荐

  1. ajax向前台输出二维数组 并解析

    最近在弄一个售后数据统计的功能,里边需要统计特定时期内各种客户.机型的分布比例,单单table来计算并显示很死板(一点也不酷) 于是决定用jquery插件flot并通过ajax传输数据 :flot的折 ...

  2. 全球最低功耗蓝牙单芯片(DA14580)系统架构和应用开发框架分析

    DA14580是Dialog公司研制的蓝牙单芯片,号称全球功耗最低,是TI CC2541的四分之一,是运动手环等穿戴类电子产品的常用芯片.但是DA14580的开发门槛不低,适合有蓝牙开发经验的团队来开 ...

  3. python data science handbook1

    import numpy as np import matplotlib.pyplot as plt import seaborn; seaborn.set() rand = np.random.Ra ...

  4. requests库入门12-文件上传和下载

    因为找不到可以演示上传接口,所以只能纯代码了 文件上传 上传文件是在请求中使用files参数,files需要指向一个dict,然后dict里面的键是接口中对应文件名的字段,而值就是打开这个文件读取到内 ...

  5. django项目的新建相关的命令及配置

    创建工程 django-admin startproject 工程名称   运行开发服务器 python manage.py runserver   创建子应用 python manage.py st ...

  6. 《数据库系统概念》10-ER模型

    通过建立实体到概念模型的映射,Entity-Relationship Model可以表达整个数据库的逻辑结构,很多数据库产品都采用E-R模型来表达数据库设计. 一.E-R模型采用了三个基本概念:实体集 ...

  7. 团队作业5-Alpha版本测试报告&lpar;彼岸芳华队&rpar;

    请根据团队项目中软件的需求文档.功能说明.系统设计和测试计划,写出软件的测试过程和测试结果,并回答下述问题. 一.在测试过程中总共发现了多少Bug?每个类别的Bug分别为多少个?(10分) 在测试过程 ...

  8. Java Hibernate Validator

    Hibernate Validator是Hibernate提供的一个开源框架,使用注解方式非常方便的实现服务端的数据校验. 官网:http://hibernate.org/validator/ hib ...

  9. How to reset XiaoMi bluetooth headphone Youth edition&period;

    To reset the speaker 1. Long press the phone call button to shut off the speaker 2. Connect the char ...

  10. Windows 10遭遇百万粉丝&OpenCurlyDoubleQuote;围攻”(挑刺)

    9月30日,微软公布Win 10技术预览版,征求反馈意见. 出人意料的是.截止10月14日.在短短两周内,竟有百万粉丝下载试用(所谓"測试"),反馈了20万条改动意见.对此,微软真 ...