Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Procedura w procedurze
vander1989
post
Post #1





Grupa: Zarejestrowani
Postów: 70
Pomógł: 0
Dołączył: 24.08.2009

Ostrzeżenie: (0%)
-----


Witam !
Mam pytanko (IMG:style_emoticons/default/smile.gif) Czy jest możliwośc wywołania procedury w procedurze (IMG:style_emoticons/default/questionmark.gif) Czy dynamicznym sqlem da się to zrobic (IMG:style_emoticons/default/questionmark.gif)
  1. a:= ' Execute procedure('parametry');';
  2. execute immediate a;
  3.  


i czy składnia tego powinna wygladac mniej wiecej tak? czy są na to jakies inne sposoby?
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 1)
IP!
post
Post #2





Grupa: Zarejestrowani
Postów: 21
Pomógł: 1
Dołączył: 21.10.2008

Ostrzeżenie: (0%)
-----


Cześć,

Można robić wiele ciekawych rzeczy z NDS w roli głównej, np:

  1. CREATE OR REPLACE PROCEDURE p2(b IN NUMBER) AS
  2. BEGIN
  3. DBMS_OUTPUT.PUT_LINE(b * b);
  4. END;
  5. /
  6.  
  7. DECLARE
  8. PROCEDURE p1(a IN NUMBER) AS
  9. BEGIN p2(a);
  10. END;
  11.  
  12. PROCEDURE p3(a IN NUMBER) AS
  13. stat VARCHAR2(20);
  14. BEGIN NULL;
  15. EXECUTE IMMEDIATE 'BEGIN p2(:1); END;' USING 4;
  16. END;
  17.  
  18. BEGIN
  19. p1(3);
  20. p3(4);
  21. END;
  22. /


Oczywiście że można wywoływać też procedurę z procedury - dynamicznie lub nie. W końcu PUT_LINE z pakietu DBMS_OUTPUT to też podprogram, który jest często wołany z ciała procedur.

Napisz czy o to Ci chodziło.

Przy okazji proponuje zapoznać się z tym:
http://www.pastusiak.info/oracle/bind_vari..._in_sql_scripts
http://www.pastusiak.info/oracle/native_dynamic_sql
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 24.08.2025 - 05:57