2013-11-22 2 views
0

мне нужно экспортировать результат в формате XML, здесь ниже код:Экспорт результат SQL заявления в формате XML

DECLARE 
     XmlFic Utl_File.File_Type; 
     XmlData CLOB; 
     Fin  BOOLEAN := TRUE; 
    BEGIN 
     XmlData := DBMS_XMLQuery.GetXML ('SELECT * FROM employees'); 
     XmlFic := Utl_File.FOpen ('C:\TMP\XML', 'TEST.xml', 'W'); 
     WHILE FIN LOOP 
      Utl_File.Put (XmlFic, SUBSTR (XmlData, 1, 32767)); 
      IF LENGTH (XmlData) > 32767 THEN 
      XmlData := SUBSTR (XmlData, 32768); 
      ELSE 
      FIN := FALSE; 
      END IF; 
     END LOOP; 
     Utl_File.FClose (XmlFic); 
    EXCEPTION 
     WHEN OTHERS THEN 
      DBMS_OUTPUT.PUT_LINE (SUBSTR (SQLERRM,1,255)); 
      Utl_File.FClose (XmlFic); 
    END; 

Я получаю следующую ошибку:

ORA-06550 : линия 2, колонка 11: PLS-00201: идентификатор 'UTL_FILE' должна быть объявлена ​​ PLS-00201: идентификатор 'DBMS_XMLQUERY.GETXML' должна быть объявлена ​​

Кто-нибудь есть идея, что я делаю неправильно? Любая помощь была бы оценена

ответ

0

Будет ли она работать, если вы используете SYS.DBMS_XMLQUERY вместо DBMS_XMLQUERY? Если это работает, синоним не создается (или даже оригинал удаляется).

https://forums.oracle.com/thread/2237396

Смежные вопросы