Drukowana wersja tematu

Kliknij tu, aby zobaczyć temat w orginalnym formacie

Forum PHP.pl _ Oracle _ Zapis do pliku

Napisany przez: mokry 22.11.2012, 11:16:38

Hej,
Próbuję zrobić automatyzację zapisu specyfikacji i body paczek do oddzielnych plików. Wszystkie paczki wybieram sobie z bazy za pomocą zapytania:

  1. SELECT
  2. OBJECT_NAME, OBJECT_NAME || '.sql' AS FILENAME, DBMS_METADATA.GET_DDL (
  3. 'PACKAGE',
  4. OBJECT_NAME,
  5. NULL,
  6. 'COMPATIBLE',
  7. 'ORACLE',
  8. 'DDL'
  9. ) || DBMS_METADATA.GET_DDL (
  10. 'PACKAGE_BODY',
  11. OBJECT_NAME,
  12. NULL,
  13. 'COMPATIBLE',
  14. 'ORACLE',
  15. 'DDL'
  16. ) FILEBODY
  17. FROM
  18. SYS.ALL_OBJECTS
  19. WHERE
  20. UPPER(OBJECT_TYPE) = 'PACKAGE'
  21. AND object_name LIKE '%_PKG_Z'
  22. ORDER BY
  23. OWNER, OBJECT_NAME


Teraz pytanie: Jak mogę zapisać każdy wybrany rekord do oddzielnych plików, tak aby nazwa pliku była odpowiednikiem kol. FILENAME a zawartość kolumną FILEBODY?

Napisany przez: wiiir 6.12.2012, 20:13:22

petla?


  1. FOR x IN ( zapytanie )
  2. loop
  3. file = utl_file.fopen(..,x.FILENAME,..);
  4. utl_file.put_line(file,x.FILEBODY);
  5. ...
  6. ...
  7. FLUSH;
  8. close;
  9. end loop;

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)