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

Azure डेटा फ़ैक्टरी v2 . से Oracle संग्रहीत कार्यविधि को कैसे कॉल करें

मैंने लुकअप एक्टिविटी और DUAL TABLE के सेलेक्ट स्टेटमेंट का इस्तेमाल किया। संग्रहित प्रक्रियाओं के कारण चयन कथन से कॉल नहीं किया जा सकता है। मैंने एक ऑरैकल फ़ंक्शन बनाया और फ़ंक्शन संग्रहीत प्रक्रिया को कॉल करता है। फ़ंक्शन एक मान देता है और यह मान लुकअप गतिविधि द्वारा प्राप्त किया जाता है। जब आप फ़ंक्शन को परिभाषित करते हैं, तो आपको PRAGMA AUTONOMOUS_TRANSACTION कथन जोड़ना होगा। ऐसा इसलिए है क्योंकि Oracle डिफ़ॉल्ट रूप से SELECT स्टेटमेंट के साथ DML निर्देशों को निष्पादित करने की अनुमति नहीं देता है। फिर, आपको यह परिभाषित करने की आवश्यकता है कि संग्रहीत प्रक्रिया में डीएमएल निर्देश एक स्वायत्त लेनदेन होगा।

--Tabla
CREATE TABLE empleados(
   emp_id NUMBER(9),
   nombre VARCHAR2(100),
   CONSTRAINT empleados_pk PRIMARY KEY(emp_id),
);

create or replace procedure insert_empleado (numero in NUMBER, nombre in VARCHAR2) is
 begin
    INSERT INTO empleados (emp_id, nombre)
    Values(numero, nombre);
COMMIT;
end;

create or replace function funcinsert_empleado (numero in NUMBER, nombre in VARCHAR2)
return VARCHAR2 
is
PRAGMA AUTONOMOUS_TRANSACTION;
begin
  insert_empleado (numero, nombre);
  return 'done';
end;
--statement in query of lookup
SELECT  funcinsert_empleado ('1', 'Roger Federer') 
FROM DUAL;

उदाहरण लुकअप

यह स्पेनिश में उदाहरण है। https://dev.to /maritzag/ejecutar-un-stored-procedure-de-oracle-desde-data-factory-2jcp



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. SQL सर्वर से ORACLE लिंक्ड सर्वर में संग्रहीत कार्यविधि पास करना

  2. क्या % NOTFOUND एक फ़ेच के बाद शून्य वापस आ सकता है?

  3. भिन्न को दशमलव में बदलें

  4. Oracle दिनांक सूचकांक

  5. क्या एक इन्सर्ट ऑपरेशन एक और डीडीएल ऑपरेशन प्रतीक्षा कर सकता है?