我试图将SELECT FROM DUAL
作为参数传递给java中的callable语句,例如:
{?=call function1( ?, (select function2(?) from dual), ?)}
当我调用此函数时,我得到异常: ORA-06550:第1行,第165列:PLS-00103:遇到符号" SELECT"当期待下列之一:( - + case mod new not null others ...
当我将函数调用为{?=call function1( ?, ?, ?)}
时,它工作正常,但我需要将另一个函数作为参数调用(例如密码加密)。
有没有办法将一个函数作为参数调用到另一个函数?
答案 0 :(得分:1)
怎么样
BEGIN function1( ?,function2(?), ?) END;
或
{?=call function1( ?, function2(?), ?)}
您无需拨打双重电话。以防万一,您可以随时使用PL / SQL。易于使用和维护。
Returning data from anonymous PL/SQL block - 包含一些有关JDBC中PL / SQL用法的有用代码片段。