Oracle
 sql >> डेटाबेस >  >> RDS >> Oracle

एक refcursor का उपयोग करके VBA के साथ Oracle संग्रहीत कार्यविधि को कॉल करें

मुझे गलती से समाधान मिल गया। अगर मैं ref_cursor पैरामीटर को परिभाषित नहीं करता, तो यह काम करता है।

cmd.CommandText = "testproc"
cmd.ActiveConnection = cn
cmd.CommandType = adCmdStoredProc
Set param1 = cmd.CreateParameter("articlenr", adInteger, adParamInput, , 47)
Set param2 = cmd.CreateParameter("storenr", adInteger, adParamInput, , 281)
Set param3 = cmd.CreateParameter("cweek", adVarChar, adParamInput, 10, "201705")

'Next line not needed
'Set param4 = cmd.CreateParameter("prc", adVariant, adParamOutput, , Null)

cmd.Parameters.Append param1
cmd.Parameters.Append param2
cmd.Parameters.Append param3

'Next line not needed
'cmd.Parameters.Append param4

Set rs = cmd.Execute

यह काम करता है, जाहिरा तौर पर ref_cursor विनिर्देश की आवश्यकता नहीं है और डिफ़ॉल्ट रूप से होता है :)



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. मेरे द्वारा चलाए जा रहे Oracle क्लाइंट का कौन सा संस्करण निर्धारित करने का सबसे अच्छा तरीका क्या है?

  2. डेटाबेस में रिकॉर्ड के लिए नियम के उल्लंघन के कारण डीबी में समवर्ती प्रविष्टियों को कैसे संभालना है?

  3. जब मैं sqlldr . का उपयोग करता हूं तो मुझे ORA-01775:समानार्थक त्रुटि की लूपिंग श्रृंखला मिलती है

  4. जावा के माध्यम से oracle 11g से जुड़ने में असमर्थ

  5. ORA-29471 को dbms_sql.open_cursor पर कैसे हल करें?