shell中怎么获取存储过程的输出参数给变量

shell中怎么获取存储过程的输出参数给变量,第1张

#下面的代码是对于从oracle的sqlplus返回变量值给shell的例子

output=`sqlplus -s unitele/lemontea << EOF

set heading off feedback off verify off

drop function test_get_param_value_p;

CREATE OR REPLACE function test_get_param_value_p

(

is_citycode in varchar2

)

return varchar2

is

on_value varchar2(100);

begin

on_value :='100000';

dbms_outputput_line(on_value);

dbms_outputput_line(is_citycode);

return on_value;

end;

/

select test_get_param_value_p('501') from dual;

exit

EOF

`

echo "Oracle的输出变量值:"$output

+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++=

存储过程 myproc(in_num in number,out_num out number)

sql脚本模板

先编辑一个mysqlsql文件,内容如下:

------------

var nret number;

execute :nret := 0;--初始化

call myproc(in_code,:nret)--执行存储过程,in_code会被替换掉

/

select 'retcode[' || :nret || ']retcode' from dual--显示结果

/

quit;

-------------

SHELL脚本myshsh,内容如下

-------------

#/myshsh 123

cd /home/myshell

sed "s/in_code/$1/" mysqlsql > mysql01sql

#根据sql脚本模板生成实际脚本

sqlplus usr/pwd@db result$1txt

#执行sql脚本并把结果输入result$1txt

echo ok!

-------------

在LINUX下执行/myshsh 123,生成result123txt,myproc输出参数在'retcode['和']retcode'之间。

object中,<param name="movie" value="SWF路径" /> 修改这里的SWF路径为 SWF路径sed=thinkabout 这样你的flash就可以在_root得到 sed 变量 _rootsed 值就是"thinkabout" 给你看个应用的例子: 在DW中插入SWF之后,在SWF的路径后面加上参数"sndURL=musicmp3",如下: <object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase=",0,19,0" width="32" height="32"> <param name="movie" value="playerswfsndURL=" /> <param name="quality" value="high" /> <embed src="11" quality="high" pluginspage="" type="application/x-shockwave-flash" width="32" height="32"></embed> </object> 当在制作FLASH的时候,使用_rootsndURL就可以获得sndURL的字符串值了这是当年我制作一个简单的flash mp3播放器的时候研究出来的 :) 想必你碰到的问题和我差不多吧~

#region 动态获取变量值

private int i = 10;

/// <summary>

/// 通过变量名获取变量值

/// </summary>

/// <param name="s">变量名,默认值为i,可不填</param>

public object GetValueByName(string s = "i")

{

FieldInfo f = GetType()GetField(s);

if (f != null)

{

return fGetValue(this);

}

return f;

}

#endregion

注意!这个只针对于动态获取当前类里的变量值,不能获取当前方法内的变量值。

public class Test {

public static void main(String[] args)throws Exception {

// TODO Auto-generated method stub

A a=new A();

String i="setB";

Method cc=agetClass()getMethod(i, Stringclass);//获取方法

//Stringclass如果没有就是new Class[0]

Systemoutprintln(ccgetName());

ccinvoke(a, "aa");

//调用方法

Systemoutprintln(agetB());

}

}

class A{

private int a=0;

private String b="abc";

public int getA() {

return a;

}

public void setA(int a) {

thisa = a;

}

public String getB() {

return b;

}

public void setB(String b) {

thisb = b;

}

}

你好!

用这个函数可以实现,跟你的脚本也有关系!

web_reg_save_param("参数名”,"LB=左边界”,"RB=右边界","Ord=All",LAST);/当参数有多个值时,加上"Ord=All”后可获取所有的数值。注册成功后,{参数名_count}表示取得的数值个数,{参数名_1}为第一个数值,{参数名_2}为第二个数值。

另外可以参考我以前写的一个脚本,地址:

>

lr_save_string("aaa","param"):将字符串“aaa”或者一个字符串变量,转变成LR的参数{param}

lr_save_int(123,”param”);将数字123,转变为LR的参数param

lr_eval_string("{param}"):取出参数{param}中的值,可嵌套在其他函数里使用

strcmp:字符串比较函数,若两个值相等,则返回0

strcpy:字符串拷贝函数,可以把一个字符串拷贝到一个字符数组中

strcat:字符串拼接函数,可以把一个字符串拼接到一个字符数组中

lr_convert_string_encoding(lr_eval_string("{msg}"),LR_ENC_UTF8,LR_ENC_SYSTEM_LOCALE,"afterEncodeMsg");

将LR中的参数{msg},从utf-8编码转换为system_local编码(LR本地编码),最后保存到LR的参数{afterEncodeMsg}中

lr_paramarr_random("param_arry"):从参数数组param_arry中随机取一个值,注意param_arry不需要加{}

int size;

size = lr_paramarr_len("param_arry"):获取参数数组param_arry的长度,并保存到C语言的变量size里

int value;

value = lr_paramarr_idx("param_arry",1):获取参数数组param_arry中第1个值,并保存到C语言的变量value里

6、web_url():get接口,一般通过录制生成

7、web_custom_request():post接口,可以测试>

var res=str1+pguid+'\\'+attachname+'swf';

documentgetElementsByName("movie")[0]value = res;

以上就是关于shell中怎么获取存储过程的输出参数给变量全部的内容,包括:shell中怎么获取存储过程的输出参数给变量、在html flash object <param>标签中使用变量的写法、C#,已知字符串,如何获取到这个变量。等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/web/9489437.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-04-28
下一篇2023-04-28

发表评论

登录后才能评论

评论列表(0条)

    保存