调用存储的MySQL函数

Aim*_*dou 3 java mysql stored-functions

verifierQteDemandee在我的数据库中创建了一个存储函数,它有一个整数参数numBonIn,它返回一个布尔值.

我想在我的java程序中执行这个函数,我用google搜索它,我所能找到的就是执行一个存储过程,但我假设执行存储函数与执行存储过程相同,这就是代码我尝试过:

CallableStatement cStmt = con.prepareCall("{call verifierQteDemandee(?)}");
            cStmt.setInt("numBonIn", 42);
            boolean hadResults = cStmt.execute();
            if (hadResults) {
                ResultSet rs = cStmt.getResultSet();
            }
            Boolean outputValue = cStmt.getBoolean(outputValue);;
Run Code Online (Sandbox Code Playgroud)

con变量是ANS实例Connection.

你可以在我的代码中注意到我不知道如何从这行中的存储函数中获取返回值:int outputValue = cStmt.getInt("");.

如果有人知道如何获得返回值的程序,我会很感激.

Sim*_*mon 8

试试这个 :

CallableStatement cStmt = con.prepareCall("{? = call verifierQteDemandee(?)}");
cStmt.registerOutParameter(1,java.sql.Types.BOOLEAN);
cStmt.setInt(2, 42);
cStmt.execute();
Boolean outputValue = cStmt.getBoolean(1);
Run Code Online (Sandbox Code Playgroud)

Çaradraisfonctionner ......!