से ओरेकल ऑब्जेक्ट-ओरिएंटेड पीएल/एसक्यूएल सदस्य प्रक्रियाओं को कॉल करें ऑब्जेक्ट उन्मुख पीएल/एसक्यूएल में, मैं सदस्य प्रक्रियाओं और कार्यों को प्रकारों में जोड़ सकता हूं। एक उदाहरण यहाँ दिया जाता है:जेडीबीसी
create type foo_type as object (
foo number,
member procedure proc(p in number),
member function func(p in number) return number
);
create type body foo_type as
member procedure proc(p in number) is begin
foo := p*2;
end proc;
member function func(p in number) return number is begin
return foo/p;
end func;
end;
से: http://www.adp-gmbh.ch/ora/plsql/oo/member.html
PL/SQL में, मैं तो इन सदस्य प्रक्रियाओं कॉल कर सकते हैं/इस तरह कार्य:
declare
x foo_type;
begin
x := foo_type(5);
x.proc(10);
dbms_output.put_line(x.func(2));
end;
मैं यह कर कैसे कर सकते हैं के साथ जेडीबीसी का कॉल करने योग्य स्टेटमेंट? मुझे यह दस्तावेज़ीकरण में आसानी से नहीं मिल रहा है।
नोट: यह एक संभावना है प्रकार निर्माता को इनलाइन:
CallableStatement call = c.prepareCall(
" { ? = call foo_type(5).func(2) } ");
लेकिन क्या मैं के लिए देख रहा हूँ कुछ इस तरह है (एक पैरामीटर के रूप java.sql.SQLData
उपयोग करते हुए):
CallableStatement call = c.prepareCall(
" { ? = call ?.func(2) } ");
इसके अलावा, सदस्य कार्य, प्रक्रियाएं वस्तु को संशोधित कर सकती हैं। जावा में संशोधित ऑब्जेक्ट को वापस कैसे प्राप्त किया जा सकता है?
अपने प्रश्न के मूल वास्तव में है "सदस्य फ़ंक्शन कैसे कॉल करें"? या यह "ऑब्जेक्ट को पैरामीटर के रूप में कैसे पास करें" है? – Codo
@ कोडो: कोर सदस्य कार्य परिणामों को पुनर्प्राप्त करने का तरीका है (उदाहरण विन्सेंट मालगेट द्वारा दिया गया उत्तर), और संभवतः संशोधित ऑब्जेक्ट को –