灵活结合Linux/Unix Shell 与SQL 之间的变量传输,极大程度的提高了DBA的工作效率,本文针对Linux/Unix shell sql 之间传递变量给出几个简单的示例以供参考。
Linux/Unix 下调用SQL,RAMN 请参考:Linux/Unix shell 脚本中调用SQL,RMAN脚本
一、示例
-
1、shell变量接受sql返回值之方式一
-
oracle@SZDB:~>more./retval.sh
-
-
RETVAL=`sqlplus-silentscott/tiger<<EOF
-
SETPAGESIZE0FEEDBACKOFFVERIFYOFFHEADINGOFFECHOOFF
-
SELECT*FROMempWHEREename='SCOTT';
-
EXIT;
-
EOF`
-
if[-z"$RETVAL"];then
-
echo"Norowsreturnedfromdatabase"
-
exit0
-
else
-
echo$RETVAL
-
fi
-
-
oracle@SZDB:~>chmodu+xretval.sh
-
oracle@SZDB:~>./retval.sh
-
7788SCOTTANALYST756619-APR-8734171.8820
-
-
2、shell变量接受sql返回值之方式二
-
oracle@SZDB:~>more./retval_2.sh
-
-
-
-
sqlplus-S"scott/tiger"<<EOF
-
SETPAGESIZE0FEEDBACKOFFVERIFYOFFHEADINGOFFECHOOFF
-
colcntnew_valuev_cnt
-
SELECTcount(*)cntFROMempWHEREdeptno=10;
-
exitv_cnt
-
EOF
-
VALUE="$?"
-
echo"showrowsfordeptno10:$VALUE"
-
-
3、将shell变量作为参数传递给sql脚本
-
oracle@SZDB:~>more./retval_3.sh
-
-
v_empno="$1"
-
sqlplus-S"scott/tiger"<<EOF
-
SETPAGESIZE0FEEDBACKOFFVERIFYOFFHEADINGOFFECHOOFF
-
SELECTenameFROMempWHEREempno=$v_empno;
-
exit
-
EOF
-
exit
-
-
oracle@SZDB:~>./retval_3.sh7788
-
SCOTT
分享到:
相关推荐
有关shell与SQL之间的变量传递,请参考:Linux/Unix shell sql 之间传递变量 1、启动sqlplus时执行脚本并传递参数 robin@SZDB:~/dba_scripts/custom/awr> more tmp.sh #!/bin/bash # ————————...
win98用户可以在autoexec.bat加入path=nc的路径,win2000用户在环境变量中加入path中,linux含有这个命令(redhat) 1、基本使用 想要连接到某处: nc [-options] hostname port[s] [ports] ... 绑定端口等待...
1.1 unix、linux和gnu简介 1 1.1.1 什么是unix 1 1.1.2 什么是linux 2 1.1.3 gnu项目和自由软件基金会 3 1.1.4 linux发行版 3 1.2 linux程序设计 4 1.2.1 linux程序 4 1.2.2 文本编辑器 5 1.2.3 c语言编译器...
1.1 unix、linux和gnu简介 1 1.1.1 什么是unix 1 1.1.2 什么是linux 2 1.1.3 gnu项目和自由软件基金会 3 1.1.4 linux发行版 3 1.2 linux程序设计 4 1.2.1 linux程序 4 1.2.2 文本编辑器 5 1.2.3 c语言编译器...
可以使用DEFINE命令设置系统变量EDITOR来改变文本编辑器的类型,在login.sql文件中定义如下一行 DEFINE_EDITOR=vi f、运行命令文件 SQL>START test SQL>@test 常用SQL*Plus语句 a、表的创建、修改、删除 创建表的...
93. cliconfg-------SQL SERVER 客户端网络实用程序 94. Clipbrd--------剪贴板查看器 95. conf-----------启动netmeeting 96. certmgr.msc----证书管理实用程序 操作详解 net use ipipc$ " " /user:" " 建立IPC...
shell 和 GNU 命令:了解有关 shell 的一切:用于处理文件、目录、文本、进程等的所有重要命令,用于编写脚本和执行简单的 SQL 请求。 磁盘和文件系统:了解有关磁盘、分区、文件系统、交换、配额、权限、挂载点的...
# 本例使用 UNIX Shell 语法注释 ?> 4、变量类型: $mystring = "我是字符串" ; $NewLine = "换行了\n" ; $int1 = 38 ; $float1 = 1.732 ; $float2 = 1.4E+2 ; $MyArray1 = array( "子" , "丑" , ...
39.2 不同类型的unix shell 39.3 在后台运行脚本 39.4 开发shell脚本 39.5 更多信息 39.6 informix与其他参考资料 第40章 informix报表工具 40.1 informix与报表工具 40.2 何谓seagateinfo 40.3 用...
分类目录LaravelMongoDB的MySQL 联网节点脾气暴躁的PHP PHPUnit Python React锈SQLite的SQL服务器理论Tmux Unix系统流浪汉视频Vim Awk 获取字符串中的字符索引在打印语句之间设置分隔符 AWS 通过标签查询...
原书名: Perl by Example(Third Edition),原出版社: ...16.3.3 Shell.pm模块(Perl) 16.3.4 system函数 16.3.5 here documents 16.3.6 Globbing(文件名扩展和通配符) 16.4 错误处理 16.4.1 die函数
八、Shell scripts:脚本编程.................28 Core Java学习笔记...........31 第一章 JAVA前言..31 第二章 标识符,关键字,类型........35 第三章 表达式与流控制....................41 第四章 数组............
Unix 系统下的安装 Mac OS X 系统下的安装 Windows 系统下的安装 PECL 扩展库安装 还有问题? 运行时配置 语言参考 基本语法 类型 变量 常量 表达式 运算符 控制结构 函数 类与对象(PHP 4) 类与对象(PHP 5) ...
Unix 系统下的安装 Mac OS X 系统下的安装 Windows 系统下的安装 PECL 扩展库安装 还有问题? 运行时配置 语言参考 基本语法 类型 变量 常量 表达式 运算符 控制结构 函数 类与对象(PHP 4) 类与对象(PHP 5) ...
4. Unix 系统下的安装 5. Mac OS X 系统下的安装 6. Windows 系统下的安装 7. PECL 扩展库安装 8. 还有问题? 9. 运行时配置 III. 语言参考 10. 基本语法 11. 类型 12. 变量 13. 常量 14. 表达式 15. 运算符 16. ...
4. Unix 系统下的安装 5. Mac OS X 系统下的安装 6. Windows 系统下的安装 7. PECL 扩展库安装 8. 还有问题? 9. 运行时配置 III. 语言参考 10. 基本语法 11. 类型 12. 变量 13. 常量 14. 表达式 15. 运算符 16. ...
4. Unix 系统下的安装 5. Mac OS X 系统下的安装 6. Windows 系统下的安装 7. PECL 扩展库安装 8. 还有问题? 9. 运行时配置 III. 语言参考 10. 基本语法 11. 类型 12. 变量 13. 常量 14. 表达式 15. 运算符 16. ...
4. Unix 系统下的安装 5. Mac OS X 系统下的安装 6. Windows 系统下的安装 7. PECL 扩展库安装 8. 还有问题? 9. 运行时配置 III. 语言参考 10. 基本语法 11. 类型 12. 变量 13. 常量 14. 表达式 15. ...