<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="ru">
		<id>http://sqle.ru/index.php?action=history&amp;feed=atom&amp;title=Oracle_PL%2FSQL_Tutorial%2FSystem_Packages%2FUTL_FILE</id>
		<title>Oracle PL/SQL Tutorial/System Packages/UTL FILE - История изменений</title>
		<link rel="self" type="application/atom+xml" href="http://sqle.ru/index.php?action=history&amp;feed=atom&amp;title=Oracle_PL%2FSQL_Tutorial%2FSystem_Packages%2FUTL_FILE"/>
		<link rel="alternate" type="text/html" href="http://sqle.ru/index.php?title=Oracle_PL/SQL_Tutorial/System_Packages/UTL_FILE&amp;action=history"/>
		<updated>2026-04-05T19:32:25Z</updated>
		<subtitle>История изменений этой страницы в вики</subtitle>
		<generator>MediaWiki 1.30.0</generator>

	<entry>
		<id>http://sqle.ru/index.php?title=Oracle_PL/SQL_Tutorial/System_Packages/UTL_FILE&amp;diff=3322&amp;oldid=prev</id>
		<title> в 13:45, 26 мая 2010</title>
		<link rel="alternate" type="text/html" href="http://sqle.ru/index.php?title=Oracle_PL/SQL_Tutorial/System_Packages/UTL_FILE&amp;diff=3322&amp;oldid=prev"/>
				<updated>2010-05-26T13:45:46Z</updated>
		
		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;table class=&quot;diff diff-contentalign-left&quot; data-mw=&quot;interface&quot;&gt;
				&lt;tr style=&quot;vertical-align: top;&quot; lang=&quot;ru&quot;&gt;
				&lt;td colspan=&quot;1&quot; style=&quot;background-color: white; color:black; text-align: center;&quot;&gt;← Предыдущая&lt;/td&gt;
				&lt;td colspan=&quot;1&quot; style=&quot;background-color: white; color:black; text-align: center;&quot;&gt;Версия 13:45, 26 мая 2010&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; style=&quot;text-align: center;&quot; lang=&quot;ru&quot;&gt;&lt;div class=&quot;mw-diff-empty&quot;&gt;(нет различий)&lt;/div&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</summary>
			</entry>

	<entry>
		<id>http://sqle.ru/index.php?title=Oracle_PL/SQL_Tutorial/System_Packages/UTL_FILE&amp;diff=3323&amp;oldid=prev</id>
		<title>Admin: 1 версия</title>
		<link rel="alternate" type="text/html" href="http://sqle.ru/index.php?title=Oracle_PL/SQL_Tutorial/System_Packages/UTL_FILE&amp;diff=3323&amp;oldid=prev"/>
				<updated>2010-05-26T10:05:59Z</updated>
		
		<summary type="html">&lt;p&gt;1 версия&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Новая страница&lt;/b&gt;&lt;/p&gt;&lt;div&gt;== A PL/SQL block to read an operating system file called BLOB.JPG that contains 1 row of binary data.==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- start source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &amp;lt;source lang=&amp;quot;sql&amp;quot;&amp;gt;&lt;br /&gt;
SQL&amp;gt;&lt;br /&gt;
SQL&amp;gt;&lt;br /&gt;
SQL&amp;gt; create table myTable(&lt;br /&gt;
  2     c1 number primary key,&lt;br /&gt;
  3     c2 blob&lt;br /&gt;
  4  );&lt;br /&gt;
Table created.&lt;br /&gt;
SQL&amp;gt;&lt;br /&gt;
SQL&amp;gt;&lt;br /&gt;
SQL&amp;gt; DECLARE&lt;br /&gt;
  2    v_raw           RAW(32767);&lt;br /&gt;
  3    v_file_id       UTL_FILE.FILE_TYPE;&lt;br /&gt;
  4  BEGIN&lt;br /&gt;
  5      v_file_id:=&lt;br /&gt;
  6      UTL_FILE.FOPEN(&amp;quot;c:\&amp;quot;,&amp;quot;blob.jpg&amp;quot;,&amp;quot;r&amp;quot;,32767);&lt;br /&gt;
  7      UTL_FILE.GET_RAW (v_file_id,v_raw);&lt;br /&gt;
  8      INSERT INTO myTable VALUES (1,v_raw);&lt;br /&gt;
  9      UTL_FILE.FCLOSE( v_file_id);&lt;br /&gt;
 10  END;&lt;br /&gt;
 11  /&lt;br /&gt;
&lt;br /&gt;
SQL&amp;gt;&lt;br /&gt;
SQL&amp;gt;&lt;br /&gt;
SQL&amp;gt; drop table myTable;&lt;br /&gt;
Table dropped.&amp;lt;/source&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
   &lt;br /&gt;
&lt;br /&gt;
== File open and close with UTL_FILE package==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- start source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &amp;lt;source lang=&amp;quot;sql&amp;quot;&amp;gt;&lt;br /&gt;
SQL&amp;gt;&lt;br /&gt;
SQL&amp;gt;&lt;br /&gt;
SQL&amp;gt; DECLARE&lt;br /&gt;
  2     lv_file_id_num  UTL_FILE.FILE_TYPE;&lt;br /&gt;
  3  BEGIN&lt;br /&gt;
  4     lv_file_id_num := UTL_FILE.FOPEN(&amp;quot;c:\apps\loaders&amp;quot;, &amp;quot;test4.dat&amp;quot;, &amp;quot;W&amp;quot;);&lt;br /&gt;
  5     UTL_FILE.FCLOSE(lv_file_id_num);&lt;br /&gt;
  6  END;&lt;br /&gt;
  7  /&lt;br /&gt;
&lt;br /&gt;
SQL&amp;gt;&amp;lt;/source&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
   &lt;br /&gt;
&lt;br /&gt;
== File open flags==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- start source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &amp;lt;source lang=&amp;quot;sql&amp;quot;&amp;gt;&lt;br /&gt;
SQL&amp;gt;&lt;br /&gt;
SQL&amp;gt; CREATE OR REPLACE PROCEDURE play_with_files&lt;br /&gt;
  2     (loc_in IN VARCHAR2,&lt;br /&gt;
  3      file_in IN VARCHAR2,&lt;br /&gt;
  4      mode_in IN VARCHAR2,&lt;br /&gt;
  5      mixed_up IN BOOLEAN := FALSE)&lt;br /&gt;
  6  IS&lt;br /&gt;
  7     fID UTL_FILE.FILE_TYPE;&lt;br /&gt;
  8     line VARCHAR2(32767) := &amp;quot;fun stuff!&amp;quot;;&lt;br /&gt;
  9  BEGIN&lt;br /&gt;
 10     IF mixed_up AND mode_in = &amp;quot;R&amp;quot;&lt;br /&gt;
 11     THEN&lt;br /&gt;
 12        fID := UTL_FILE.FOPEN (loc_in, file_in, &amp;quot;W&amp;quot;);&lt;br /&gt;
 13     ELSIF mixed_up&lt;br /&gt;
 14     THEN&lt;br /&gt;
 15        fID := NULL;&lt;br /&gt;
 16     ELSE&lt;br /&gt;
 17        fID := UTL_FILE.FOPEN (loc_in, file_in, mode_in);&lt;br /&gt;
 18     END IF;&lt;br /&gt;
 19&lt;br /&gt;
 20     IF mode_in = &amp;quot;R&amp;quot;&lt;br /&gt;
 21     THEN&lt;br /&gt;
 22        UTL_FILE.GET_LINE (fid, line);&lt;br /&gt;
 23        DBMS_OUTPUT.PUT_LINE (&amp;quot;Read from &amp;quot; || file_in || &amp;quot; in &amp;quot; || loc_in);&lt;br /&gt;
 24     ELSE&lt;br /&gt;
 25        UTL_FILE.PUT_LINE (fid, line);&lt;br /&gt;
 26        DBMS_OUTPUT.PUT_LINE (&amp;quot;Wrote to &amp;quot; || file_in || &amp;quot; in &amp;quot; || loc_in);&lt;br /&gt;
 27     END IF;&lt;br /&gt;
 28&lt;br /&gt;
 29     UTL_FILE.FCLOSE (fid);&lt;br /&gt;
 30  END;&lt;br /&gt;
 31  /&lt;br /&gt;
SQL&amp;gt;&amp;lt;/source&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
   &lt;br /&gt;
&lt;br /&gt;
== Open a file with mode passed in==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- start source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &amp;lt;source lang=&amp;quot;sql&amp;quot;&amp;gt;&lt;br /&gt;
SQL&amp;gt;&lt;br /&gt;
SQL&amp;gt; CREATE OR REPLACE FUNCTION fopen&lt;br /&gt;
  2     (loc_in IN VARCHAR2,&lt;br /&gt;
  3      file_in IN VARCHAR2,&lt;br /&gt;
  4      mode_in IN VARCHAR2 := &amp;quot;R&amp;quot;)&lt;br /&gt;
  5      RETURN UTL_FILE.FILE_TYPE&lt;br /&gt;
  6  IS&lt;br /&gt;
  7     fID UTL_FILE.FILE_TYPE;&lt;br /&gt;
  8  BEGIN&lt;br /&gt;
  9     fID := UTL_FILE.FOPEN (loc_in, file_in, mode_in);&lt;br /&gt;
 10     RETURN fid;&lt;br /&gt;
 11  EXCEPTION&lt;br /&gt;
 12     WHEN UTL_FILE.INVALID_OPERATION&lt;br /&gt;
 13     THEN&lt;br /&gt;
 14        IF mode_in = &amp;quot;A&amp;quot;&lt;br /&gt;
 15        THEN&lt;br /&gt;
 16           fID := UTL_FILE.FOPEN (loc_in, file_in, &amp;quot;W&amp;quot;);&lt;br /&gt;
 17           RETURN fid;&lt;br /&gt;
 18        ELSE&lt;br /&gt;
 19           RAISE;&lt;br /&gt;
 20        END IF;&lt;br /&gt;
 21  END;&lt;br /&gt;
 22  /&lt;br /&gt;
&lt;br /&gt;
SQL&amp;gt;&amp;lt;/source&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
   &lt;br /&gt;
&lt;br /&gt;
== Save table records to a file==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- start source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &amp;lt;source lang=&amp;quot;sql&amp;quot;&amp;gt;&lt;br /&gt;
SQL&amp;gt;&lt;br /&gt;
SQL&amp;gt; CREATE TABLE employees&lt;br /&gt;
  2  ( employee_id          number(10)      not null,&lt;br /&gt;
  3    last_name            varchar2(50)      not null,&lt;br /&gt;
  4    email                varchar2(30),&lt;br /&gt;
  5    hire_date            date,&lt;br /&gt;
  6    job_id               varchar2(30),&lt;br /&gt;
  7    department_id        number(10),&lt;br /&gt;
  8    salary               number(6),&lt;br /&gt;
  9    manager_id           number(6)&lt;br /&gt;
 10  );&lt;br /&gt;
Table created.&lt;br /&gt;
SQL&amp;gt; insert into employees( employee_id, last_name, email, hire_date, job_id, salary,department_id ,manager_id)&lt;br /&gt;
  2                values ( 1001, &amp;quot;Lawson&amp;quot;, &amp;quot;lawson@g.ru&amp;quot;, &amp;quot;01-JAN-2002&amp;quot;,&amp;quot;MGR&amp;quot;, 30000,1 ,1004);&lt;br /&gt;
1 row created.&lt;br /&gt;
SQL&amp;gt; insert into employees( employee_id, last_name, email, hire_date, job_id, salary, department_id ,manager_id)&lt;br /&gt;
  2                values ( 1002, &amp;quot;Wells&amp;quot;, &amp;quot;wells@g.ru&amp;quot;, &amp;quot;01-JAN-2002&amp;quot;, &amp;quot;DBA&amp;quot;, 20000,2, 1005 );&lt;br /&gt;
1 row created.&lt;br /&gt;
SQL&amp;gt; insert into employees( employee_id, last_name, email, hire_date, job_id, salary, department_id ,manager_id)&lt;br /&gt;
  2                 values( 1003, &amp;quot;Bliss&amp;quot;, &amp;quot;bliss@g.ru&amp;quot;, &amp;quot;01-JAN-2002&amp;quot;, &amp;quot;PROG&amp;quot;, 24000,3 ,1004);&lt;br /&gt;
1 row created.&lt;br /&gt;
SQL&amp;gt; insert into employees( employee_id, last_name, email, hire_date, job_id, salary, department_id, manager_id)&lt;br /&gt;
  2                 values( 1004,  &amp;quot;Kate&amp;quot;, &amp;quot;YourName@a.ru&amp;quot;, SYSDATE-3650, &amp;quot;MGR&amp;quot;,25000 ,4, 1005);&lt;br /&gt;
1 row created.&lt;br /&gt;
SQL&amp;gt; insert into employees( employee_id, last_name, email, hire_date, job_id, salary, department_id, manager_id)&lt;br /&gt;
  2                 values( 1005, &amp;quot;Dillon&amp;quot;, &amp;quot;sdillon@a .ru&amp;quot;, SYSDATE, &amp;quot;PROG&amp;quot;, 20000, 1, 1006);&lt;br /&gt;
1 row created.&lt;br /&gt;
SQL&amp;gt; insert into employees( employee_id, last_name, email, hire_date, job_id, salary, department_id,manager_id)&lt;br /&gt;
  2                 values( 1006, &amp;quot;Beck&amp;quot;, &amp;quot;clbeck@g.ru&amp;quot;, SYSDATE, &amp;quot;PROG&amp;quot;, 20000, 2, null);&lt;br /&gt;
1 row created.&lt;br /&gt;
SQL&amp;gt; insert into employees( employee_id, last_name, email, hire_date, job_id, salary, department_id, manager_id)&lt;br /&gt;
  2                 values( 1007, &amp;quot;Java&amp;quot;, &amp;quot;java01@g.ru&amp;quot;, SYSDATE, &amp;quot;PROG&amp;quot;, 20000, 3, 1006);&lt;br /&gt;
1 row created.&lt;br /&gt;
SQL&amp;gt; insert into employees( employee_id, last_name, email, hire_date, job_id, salary, department_id, manager_id)&lt;br /&gt;
  2                 values( 1008, &amp;quot;Oracle&amp;quot;, &amp;quot;oracle1@g.ru&amp;quot;, SYSDATE, &amp;quot;DBA&amp;quot;, 20000, 4, 1006);&lt;br /&gt;
1 row created.&lt;br /&gt;
SQL&amp;gt;&lt;br /&gt;
SQL&amp;gt; CREATE OR REPLACE PROCEDURE emps2file (&lt;br /&gt;
  2     loc IN VARCHAR2,&lt;br /&gt;
  3     file IN VARCHAR2&lt;br /&gt;
  4     )&lt;br /&gt;
  5  IS&lt;br /&gt;
  6     fid UTL_FILE.FILE_TYPE := UTL_FILE.FOPEN (loc, file, &amp;quot;W&amp;quot;);&lt;br /&gt;
  7     line VARCHAR2(2000);&lt;br /&gt;
  8  BEGIN&lt;br /&gt;
  9     FOR rec IN (SELECT last_name, hire_date, salary FROM employee)&lt;br /&gt;
 10     LOOP&lt;br /&gt;
 11        line :=&lt;br /&gt;
 12           rec.last_name || &amp;quot;,&amp;quot; ||&lt;br /&gt;
 13           TO_CHAR (rec.hire_date, &amp;quot;MM/DD/YYYY&amp;quot;) || &amp;quot;,&amp;quot; ||&lt;br /&gt;
 14           rec.salary;&lt;br /&gt;
 15        UTL_FILE.PUT_LINE (fid, line);&lt;br /&gt;
 16     END LOOP;&lt;br /&gt;
 17     UTL_FILE.FCLOSE (fid);&lt;br /&gt;
 18  EXCEPTION&lt;br /&gt;
 19     WHEN OTHERS THEN UTL_FILE.FCLOSE (fid);&lt;br /&gt;
 20  END;&lt;br /&gt;
 21  /&lt;br /&gt;
&lt;br /&gt;
SQL&amp;gt;&lt;br /&gt;
SQL&amp;gt; drop table employees;&amp;lt;/source&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
   &lt;br /&gt;
&lt;br /&gt;
== Use UTL_FILE package to create a file==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- start source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &amp;lt;source lang=&amp;quot;sql&amp;quot;&amp;gt;&lt;br /&gt;
SQL&amp;gt;&lt;br /&gt;
SQL&amp;gt; CREATE OR REPLACE PROCEDURE fcreate (loc_in IN VARCHAR2, file_in IN VARCHAR2)&lt;br /&gt;
  2  IS&lt;br /&gt;
  3     fID UTL_FILE.FILE_TYPE;&lt;br /&gt;
  4  BEGIN&lt;br /&gt;
  5&lt;br /&gt;
  6     fID := UTL_FILE.FOPEN (loc_in, file_in, &amp;quot;W&amp;quot;);&lt;br /&gt;
  7&lt;br /&gt;
  8     UTL_FILE.FCLOSE (fid);&lt;br /&gt;
  9  END;&lt;br /&gt;
 10  /&lt;br /&gt;
Warning: Procedure created with compilation errors.&lt;br /&gt;
SQL&amp;gt;&lt;br /&gt;
SQL&amp;gt; show error&lt;br /&gt;
Errors for PROCEDURE FCREATE:&lt;br /&gt;
LINE/COL ERROR&lt;br /&gt;
-------- -----------------------------------------------------------------&lt;br /&gt;
3/8      PL/SQL: Item ignored&lt;br /&gt;
3/8      PLS-00201: identifier &amp;quot;UTL_FILE&amp;quot; must be declared&lt;br /&gt;
6/4      PL/SQL: Statement ignored&lt;br /&gt;
6/4      PLS-00320: the declaration of the type of this expression is&lt;br /&gt;
         incomplete or malformed&lt;br /&gt;
8/4      PL/SQL: Statement ignored&lt;br /&gt;
8/21     PLS-00320: the declaration of the type of this expression is&lt;br /&gt;
         incomplete or malformed&lt;br /&gt;
SQL&amp;gt;&amp;lt;/source&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
   &lt;br /&gt;
&lt;br /&gt;
== utl_file.invalid_&amp;amp;&amp;amp;firstparm==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- start source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &amp;lt;source lang=&amp;quot;sql&amp;quot;&amp;gt;&lt;br /&gt;
SQL&amp;gt;&lt;br /&gt;
SQL&amp;gt; begin&lt;br /&gt;
  2     raise utl_file.invalid_&amp;amp;&amp;amp;firstparm;&lt;br /&gt;
  3  exception&lt;br /&gt;
  4      when others then dbms_output.put_line(sqlcode);&lt;br /&gt;
  5         dbms_output.put_line(sqlerrm);&lt;br /&gt;
  6  end;&lt;br /&gt;
  7  /&lt;br /&gt;
old   2:    raise utl_file.invalid_&amp;amp;&amp;amp;firstparm;&lt;br /&gt;
new   2:    raise utl_file.invalid_--&amp;lt;/source&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
   &lt;br /&gt;
&lt;br /&gt;
== UTL_FILE.IS_OPEN==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- start source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &amp;lt;source lang=&amp;quot;sql&amp;quot;&amp;gt;&lt;br /&gt;
SQL&amp;gt;&lt;br /&gt;
SQL&amp;gt; CREATE OR REPLACE PROCEDURE utlfile_test&lt;br /&gt;
  2  IS&lt;br /&gt;
  3    v_filehandle UTL_FILE.FILE_TYPE;&lt;br /&gt;
  4    v_newline VARCHAR2(1022);&lt;br /&gt;
  5  BEGIN&lt;br /&gt;
  6    IF NOT UTL_FILE.IS_OPEN(v_filehandle) THEN&lt;br /&gt;
  7      v_newline := &amp;quot;This is the line of text&amp;quot;;&lt;br /&gt;
  8&lt;br /&gt;
  9    END IF;&lt;br /&gt;
 10&lt;br /&gt;
 11  END;&lt;br /&gt;
 12  /&lt;br /&gt;
&lt;br /&gt;
SQL&amp;gt; drop procedure utlfile_test;&lt;br /&gt;
Procedure dropped.&lt;br /&gt;
SQL&amp;gt;&lt;br /&gt;
SQL&amp;gt;&amp;lt;/source&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
   &lt;br /&gt;
&lt;br /&gt;
== UTL_File related exception==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- start source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &amp;lt;source lang=&amp;quot;sql&amp;quot;&amp;gt;&lt;br /&gt;
SQL&amp;gt;&lt;br /&gt;
SQL&amp;gt; CREATE OR REPLACE PROCEDURE sp_utlfile&lt;br /&gt;
  2  IS&lt;br /&gt;
  3    v_filehandle UTL_FILE.FILE_TYPE;&lt;br /&gt;
  4    v_newline VARCHAR2(1023);&lt;br /&gt;
  5  BEGIN&lt;br /&gt;
  6    IF NOT UTL_FILE.IS_OPEN(v_filehandle) THEN&lt;br /&gt;
  7      v_filehandle := UTL_FILE.FOPEN(&amp;quot;c:\temp&amp;quot;, &amp;quot;input_file.txt&amp;quot;, &amp;quot;r&amp;quot;);&lt;br /&gt;
  8    END IF;&lt;br /&gt;
  9&lt;br /&gt;
 10    LOOP&lt;br /&gt;
 11      BEGIN&lt;br /&gt;
 12&lt;br /&gt;
 13        UTL_FILE.GET_LINE(v_filehandle, v_newline);&lt;br /&gt;
 14        DBMS_OUTPUT.PUT_LINE (v_newline);&lt;br /&gt;
 15      EXCEPTION&lt;br /&gt;
 16&lt;br /&gt;
 17        WHEN NO_DATA_FOUND THEN&lt;br /&gt;
 18          EXIT;&lt;br /&gt;
 19      END;&lt;br /&gt;
 20    END LOOP;&lt;br /&gt;
 21&lt;br /&gt;
 22    UTL_FILE.FCLOSE(v_filehandle);&lt;br /&gt;
 23&lt;br /&gt;
 24  EXCEPTION&lt;br /&gt;
 25    WHEN UTL_FILE.INVALID_PATH THEN&lt;br /&gt;
 26      UTL_FILE.FCLOSE_ALL;&lt;br /&gt;
 27      RAISE_APPLICATION_ERROR(-20051, &amp;quot;Invalid Path&amp;quot;);&lt;br /&gt;
 28&lt;br /&gt;
 29    WHEN UTL_FILE.INVALID_MODE THEN&lt;br /&gt;
 30      UTL_FILE.FCLOSE_ALL;&lt;br /&gt;
 31      RAISE_APPLICATION_ERROR(-20052, &amp;quot;Invalid Mode&amp;quot;);&lt;br /&gt;
 32&lt;br /&gt;
 33    WHEN UTL_FILE.INTERNAL_ERROR THEN&lt;br /&gt;
 34      UTL_FILE.FCLOSE_ALL;&lt;br /&gt;
 35      RAISE_APPLICATION_ERROR(-20053, &amp;quot;Internal Error&amp;quot;);&lt;br /&gt;
 36&lt;br /&gt;
 37    WHEN UTL_FILE.INVALID_OPERATION THEN&lt;br /&gt;
 38      UTL_FILE.FCLOSE_ALL;&lt;br /&gt;
 39      RAISE_APPLICATION_ERROR(-20054, &amp;quot;Invalid Operation&amp;quot;);&lt;br /&gt;
 40&lt;br /&gt;
 41    WHEN UTL_FILE.INVALID_FILEHANDLE THEN&lt;br /&gt;
 42      UTL_FILE.FCLOSE_ALL;&lt;br /&gt;
 43      RAISE_APPLICATION_ERROR(-20055, &amp;quot;Invalid Operation&amp;quot;);&lt;br /&gt;
 44&lt;br /&gt;
 45    WHEN UTL_FILE.WRITE_ERROR THEN&lt;br /&gt;
 46      UTL_FILE.FCLOSE_ALL;&lt;br /&gt;
 47      RAISE_APPLICATION_ERROR(-20056, &amp;quot;Invalid Operation&amp;quot;);&lt;br /&gt;
 48  END;&lt;br /&gt;
 49  /&lt;br /&gt;
Warning: Procedure created with compilation errors.&lt;br /&gt;
SQL&amp;gt;&lt;br /&gt;
SQL&amp;gt; execute sp_utlfile ;&lt;br /&gt;
BEGIN sp_utlfile ; END;&lt;br /&gt;
      *&lt;br /&gt;
ERROR at line 1:&lt;br /&gt;
ORA-06550: line 1, column 7:&lt;br /&gt;
PLS-00905: object sqle.SP_UTLFILE is invalid&lt;br /&gt;
ORA-06550: line 1, column 7:&lt;br /&gt;
PL/SQL: Statement ignored&lt;br /&gt;
&lt;br /&gt;
SQL&amp;gt;&amp;lt;/source&amp;gt;&lt;/div&gt;</summary>
		<author><name>Admin</name></author>	</entry>

	</feed>