gpt4 book ai didi

PostgreSQL:使用 JDBC 调用函数

转载 作者:行者123 更新时间:2023-11-29 13:02:42 26 4
gpt4 key购买 nike

如下所示:http://www.postgresql.org/docs/7.4/static/jdbc-callproc.html

// Turn transactions off.
con.setAutoCommit(false);
// Procedure call.
CallableStatement upperProc = con.prepareCall("{ ? = call upper( ? ) }");
upperProc.registerOutParameter(1, Types.VARCHAR);
upperProc.setString(2, "lowercase to uppercase");
upperProc.execute();
String upperCased = upperProc.getString(1);
upperProc.close();

我可以这样做吗:

// Turn transactions off.
con.setAutoCommit(false);
// Procedure call.
CallableStatement upperProc = con.prepareCall("{call upper( ? ) }");
upperProc.setString(2, "lowercase to uppercase");
upperProc.execute();
upperProc.close();

我只是删除了 ?在调用上层之前。我的查询只是插入,所以我不需要值。我想将它保留在这种格式中,因为 mysql 也使用这种格式,因此我可以在 JAVA 中重用很多代码。

最佳答案

JavaDoc for CallableStatement显示没有返回值的语法:

   {call <procedure-name>[(<arg1>,<arg2>, ...)]}

所以如果 PgJDBC 不接受它,那就是一个错误。

你可以省略 吗? =

关于PostgreSQL:使用 JDBC 调用函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24741312/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com