我在 Oracle 11g 中编写了一个带有游标的过程,以便我可以在 Java 代码中使用它。谁能告诉我如何使用这个过程并从 Java 代码中调用它?
create or replace
PROCEDURE show_students
(
students_cursor OUT SYS_REFCURSOR
)AS
BEGIN
OPEN students_cursor FOR
SELECT * from students;
END show_students;
最佳答案
使用这个:
CallableStatement stmt = connection.prepareCall("BEGIN SHOW_STUDENTS(?); END;");
stmt.registerOutParameter(1, OracleTypes.CURSOR); //REF CURSOR
stmt.execute();
rs = ((OracleCallableStatement)stmt).getCursor(1);
我建议在这种情况下使用函数而不是过程。
请注意,我认为您已将数据库连接作为“连接”
关于java - 在 Oracle PL/SQL 中调用存储过程,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40858399/