在oracle sqlplus中通过new_value及define传递或定义变量variable

背景

  今天在MOS上发现一则文章:Information Gathering Script For ORA-4031 Analysis On Large Pool (文档 ID 1909805.1),里面SQL脚本编写用到了..方法,


在我之前的文章中有过测试,
http://blog.itpub.net/9240380/
  不过MOS里面的写法和我的不同,在这儿我用MOS的方法测试下,多掌握一种方法,提升工作能力,希望对大家有益。


结论

1,select可以通过new_value把查询列的变量传递到sql脚本中的其它变量中
2,define可以定义一个变量,也可以引用一个变量
3,引用一变量必须要在变量前加&
4,字符常量必须要用''括起,而字符变量须用&变量引用


测试

1,编写SQL脚本
[ora10g@seconary large_pool_4031]$ more learn_mos.sql 
rem set markup html on preformat on
spool zxy.txt
column sql_column noprint new_value sql_column
select to_char(sysdate,'yyyymmddhh24miss') sql_column from dual;
define var1=&sql_column
select 'abc'||&var1 from dual;
spool off
exit


2,在sqlplus运行sql脚本,并查看结果
[ora10g@seconary large_pool_4031]$ more zxy.txt 


old   1: select 'abc'||&var1 from dual
new   1: select 'abc'||20150924050444 from dual


'ABC'||2015092405                                                               
-----------------                                                               
abc20150924050444  


个人简介


8年oracle从业经验,具备丰富的oracle技能,目前在国内北京某专业oracle服务公司从事高级技术顾问。
服务过的客户:
中国电信
中国移动
中国联通
中国电通
国家电网
四川达州商业银行
湖南老百姓大药房
山西省公安厅
中国邮政
北京302医院     
河北廊坊新奥集团公司

 项目经验:
中国电信3G项目AAA系统数据库部署及优化
      中国联通4G数据库性能分析与优化
中国联通CRM数据库性能优化
中国移动10086电商平台数据库部署及优化
湖南老百姓大药房ERR数据库sql优化项目
四川达州商业银行TCBS核心业务系统数据库模型设计和RAC部署及优化
四川达州商业银行TCBS核心业务系统后端批处理存储过程功能模块编写及优化
北京高铁信号监控系统RAC数据库部署及优化
河南宇通客车数据库性能优化
中国电信电商平台核心采购模块表模型设计及优化
中国邮政储蓄系统数据库性能优化及sql优化
北京302医院数据库迁移实施
河北廊坊新奥data guard部署及优化
山西公安厅身份证审计数据库系统故障评估
国家电网上海灾备项目4 node rac+adg 
       贵州移动crm及客服数据库性能优化项目
       贵州移动crm及客服务数据库sql审核项目
       深圳穆迪软件有限公司数据库性能优化项目

联系方式:
手机:18201115468
qq   :   305076427
qq微博: wisdomone1
新浪微博:wisdomone9
qq群:275813900    
itpub博客名称:wisdomone1    http://blog.itpub.net/9240380/

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/9240380/viewspace-1808363/,如需转载,请注明出处,否则将追究法律责任。

转载于:http://blog.itpub.net/9240380/viewspace-1808363/

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值