Java Call PLSQL Oracle Function และ Store procedure

บทความเกี่ยวกับ : Java Call PLSQL Oracle Function และ Store procedure


ตัวอย่างการเขียนโปรแกรมด้วยภาษา Java เพื่อเรียกใช้งาน PLSQL นั้นแตกต่างจากการเขียนเพื่อ Execute SQL statement ธรรมดาอยูนิดหน่อยตามตัวอย่างครับ

CallableStatement call=null;
ResultSet rs=null;
try {                       
            call = con.prepareCall("{call TEST_PACK.TEST_PROC(?,?,?) }");
            call.registerOutParameter(1, oracle.jdbc.driver.OracleTypes.CURSOR);
            call.setString(2,"10001");
            call.setString(3,"TEST");           
            call.execute();
            rs=(ResultSet)call.getResultSet();           
            while(rs.next()){           
                System.out.println(rs.getString(3));               
            }
        } catch (Exception e) {
            e.printStackTrace();
}

ตามตัวอย่างเลยครับ แต่ถ้าเป็น Function จะเขียนอีกแบบเพราะว่า function จะไม่มี parameter out แต่จะสั่ง return ออกมา เราต้อง Call แบบนี้ครับ

CallableStatement call=null;
ResultSet rs=null;
try {                       
            call = con.prepareCall("{? = call TEST_PACK.TEST_FUNC(?,?) }");
            call.registerOutParameter(1, oracle.jdbc.driver.OracleTypes.CURSOR);
            call.setString(2,"10001");
            call.setString(3,"TEST");           
            call.execute();
            rs=(ResultSet)call.getResultSet();           
            while(rs.next()){           
                System.out.println(rs.getString(3));               
            }
        } catch (Exception e) {
            e.printStackTrace();
}


โพสต์ยอดนิยมจากบล็อกนี้

java -Xms , java -Xmx กำหมด memory ให้ JVM เพื่อป้องกันปัญหา Out of Memory

Oracle date format จัด format date ให้แสดง พศ และ เดือน ภาษาไทยหรือตามภาษาที่เราเลือก

Java this กับ super การใช้งานคำสั่ง this กับ super ใน ภาษา Java