有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java如何在jdbc中执行oracle过程

我是java jdbc新手。我尝试在java中运行以下oracle plsql查询,但我无法得到我不知道如何执行的结果。如何运行下面的sql代码。如何在jdbc中执行以下过程。请不要评判我我是新手

declare
  o_claim number;
  o_error number;
begin
  bss_ln.bss_claim(o_claim => o_claim,
                   o_error => o_error,
                   i_card => ?,
                   i_phone =>?,
                   i_product=>?);
end;

共 (2) 个答案

  1. # 1 楼答案

    ConnectionManager mgr = ConnectionManager.getInstance();
    OracleConnection conn = mgr.getConnection(connectionLabel);
    
    CallableStatement cstmt = conn.prepareCall("{ call bss_ln.bss_claim(?, ?, ?, ?, ?) }");
    // prepare output params
    cstmt.registerOutParameter(1, java.sql.Types.NUMBER);
    cstmt.registerOutParameter(2, java.sql.Types.NUMBER);
    
    // prepare input params
    cstmt.setString(3, "input param");
    cstmt.setString(4, "input param");
    cstmt.setString(5, "input param");
    
    
    cstmt.executeUpdate();
    
    // get result
    int o_claim = cstmt.getInt(1);
    int o_error = cstmt.getInt(2);
    
    
    // close cursor
    cstmt.close();