gpt4 book ai didi

java - OracleCallableStatement registerOutParameter 不喜欢命名绑定(bind)

转载 作者:太空宇宙 更新时间:2023-11-04 08:50:02 25 4
gpt4 key购买 nike

此代码给出“错误设置或注册参数”SQLException。有人可以帮忙吗?

OracleConnection conn = getAppConnection();
String q = "BEGIN INSERT INTO tb (id) values (claim_seq.nextval) returning id into :newId; end;" ;
CallableStatement cs = (OracleCallableStatement) conn.prepareCall(q);
cs.registerOutParameter("newId", OracleTypes.NUMBER);
cs.execute();
int newId = cs.getInt("newId");

最佳答案

JDBC 不支持命名绑定(bind),因此到此为止。

要么使用索引占位符,要么在 JDBC 之上添加一个额外的抽象层来支持命名参数,例如Hibernate和/或 JPA .

<小时/>

另请参阅:

关于java - OracleCallableStatement registerOutParameter 不喜欢命名绑定(bind),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3552872/

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