从shell脚本调用PL/SQL存储过程并捕获输出参数
问题: 我有一个PL/SQL存储过程callServlet(wire_type in varchar2,out_flag out varchar2)。在这个存储过程中,我必须 调用servlet。 最初,我需要一个shell脚本,它通过传入、传出shell中的参数来执行这个callServlet存储过程。 我需要从存储过程中捕获out_flag9Out参数)值,并且我必须计算存储的out_标志值 确定out_flagg的值是否成功 您能告诉我以下情况吗从shell脚本调用PL/SQL存储过程并捕获输出参数,shell,plsql,Shell,Plsql,问题: 我有一个PL/SQL存储过程callServlet(wire_type in varchar2,out_flag out varchar2)。在这个存储过程中,我必须 调用servlet。 最初,我需要一个shell脚本,它通过传入、传出shell中的参数来执行这个callServlet存储过程。 我需要从存储过程中捕获out_flag9Out参数)值,并且我必须计算存储的out_标志值 确定out_flagg的值是否成功 您能告诉我以下情况吗 如何通过传入和传出参数从shell脚本调用
提前谢谢 首先创建一个名为callServlet.SQL的SQL*plus脚本: 然后使用backticks从shell脚本调用SQL*plus和SQL脚本:
flag=`sqlplus user/secret@database @callServlet.sql "xy"`
out参数将分配给外壳变量标志。“xy”是参数wire_type的值。首先创建一个名为callServlet.SQL的SQL*plus脚本: 然后使用backticks从shell脚本调用SQL*plus和SQL脚本:
flag=`sqlplus user/secret@database @callServlet.sql "xy"`
out参数将分配给外壳变量标志。“xy”是参数wire_type的值。我尝试了这个方法,当我执行shell脚本时,它不会简单地结束它的开始而没有任何结果。。我必须使用(ctrl-Z)在控制台上执行此操作。为了使用它,我们还有一个问题标志=
sqlplus用户/secret@callServlet.sql“xy”
。我们已经开始使用flag=sqlplus用户/secret@DATABASE_B要连接到特定的数据库,我必须以以下方式使用此命令flag=
sqlplus user/secret@DATABASE_B@callServlet.sql“xy”`,我不认为这会起作用。很抱歉,shell脚本中有一个错误。你准确地指出了我的错误陈述。我现在已经修复了它。我尝试了这个,当我执行shell脚本时,它不是简单地结束它的启动而没有任何结果。。我必须使用(ctrl-Z)在控制台上执行此操作。为了使用它,我们还有一个问题标志=sqlplus用户/secret@callServlet.sql“xy”
。我们已经开始使用flag=sqlplus用户/secret@DATABASE_B要连接到特定的数据库,我必须以以下方式使用此命令flag=
sqlplus user/secret@DATABASE_B@callServlet.sql“xy”`,我不认为这会起作用。很抱歉,shell脚本中有一个错误。你准确地指出了我的错误陈述。我现在已经修好了。