Java CallableStatements
provides प्रदान करता है ऐसे उद्देश्यों के लिए।
CallableStatement cstmt = conn.prepareCall("{? = CALL total_cancellations()}");
cstmt.registerOutParameter(1, Types.INTEGER);
cstmt.setInt(2, acctNo);
cstmt.executeUpdate();
int cancel= cstmt.getInt(1);
System.out.print("Cancellation is "+cancel);
जैसा आप pl/sql में करते हैं वैसा ही प्रिंट करेंगे। दस्तावेज़ों के अनुसार Connection#prepareCall()
,
डेटाबेस संग्रहीत कार्यविधियों को कॉल करने के लिए CallableStatement ऑब्जेक्ट बनाता है। CallableStatement ऑब्जेक्ट अपने IN और OUT मापदंडों को सेट करने के तरीके और कॉल को एक संग्रहीत प्रक्रिया में निष्पादित करने के तरीके प्रदान करता है।
आप फ़ंक्शन के लिए पैरामीटर भी पास कर सकते हैं। उदाहरण के लिए,
conn.prepareCall("{? = CALL total_cancellations(?)}");
cstmt.setInt(2, value);
फ़ंक्शन को मान इनपुट पैरामीटर के रूप में पास करेगा।
आशा है कि यह मदद करता है!