0% found this document useful (0 votes)
37 views5 pages

Utl File Package

Download as pdf or txt
Download as pdf or txt
Download as pdf or txt
You are on page 1/ 5

UTL_FILES PACKAGE:

WITH UTL FILE PACKAGE WE CAN WRITE DATA INTO AND


READ DATA FROM FILES.

MEMBERS OF UTL FILE PACKAGE:


1.FILE_TYPE:
IT IS A TYPE USED TO DECLARE FILE VARIBALE.

SYNTAX:
<FILE VARIBALE NAME> UTL_FILE.FILE_TYPE;

2.FOPEN ():
IT A FUNCTION USED TO OPEN FILE.

SYNTAX:
<FILE VARIABLE NAME>: = UTL_FILE.FOPEN(DIRECTORY NAME,
<FILE NAME>, MODE);
HERE, MODE ARE WRITE (W), READ (R), APPEND(A).

3.PUT_LINE:
IT IS A PROCEDURE USED TO WRITE DATA INTO FILE.

SYNTAX:
UTL_FILE.PUT_LINE (<FILE VARIABLE NAME>, <TYPE DATA>);

4.GET_LINE:
IT IS A PROCEDURE USED TO READ DATA FROM FILE.

SYNTAX:
UTL_FILE.GET_LINE (<FILE VARIABLE NAME>, <STRING
VARIABLE>);
5.FCLOSE:
IT IS PROCEDURE USED TO CLOSE FILE.

SYNTAX:
UTL_FILE.FCLOSE(<FILE VARIABLE NAME>);

EX:
SQL> CONN SYSTEM/MANAGER;
CONNECTED.
SQL> GRANT CREATE ANY DIRECTORY TO SCOTT;
GRANT SUCCEEDED.

SQL> CONN SCOTT/TIGER;


CONNECTED.
SQL> CREATE DIRECTORY XYZ AS 'E:\SUDHAKAR';
DIRECTORY CREATED.

SQL> CONN SYSTEM/MANAGER;


CONNECTED.
SQL> GRANT READ, WRITE ON DIRECTORY XYZ TO SCOTT;
GRANT SUCCEEDED.

EX1: PROGRAM TO WRITE DATA INTO TEXT FILE?


SQL> DECLARE
FV UTL_FILE.FILE_TYPE;
BEGIN
FV: =UTL_FILE.FOPEN('XYZ','FILE1.TXT','W');
UTL_FILE.PUT_LINE(FV,'HELLO');
UTL_FILE.FCLOSE(FV);
END;
/
EX2: PROGRAM TO READ DATA FROM TEXT FILE?
SQL>DECLARE
FV UTL_FILE.FILE_TYPE;
S VARCHAR2(1000);
BEGIN
FV: =UTL_FILE.FOPEN('XYZ','FILE1.TXT','R');
LOOP
UTL_FILE.GET_LINE (FV, S);
DBMS_OUTPUT.PUT_LINE(S);
END LOOP;
EXCEPTION
WHEN NO_DATA_FOUND THEN
UTL_FILE.FCLOSE(FV);
END;
/
OUTPUT:
HELLO

EX3: PROGRAM TO WRITE EMPLOYEE DATA INTO TEXT FILE?


DECLARE
F1 UTL_FILE.FILE_TYPE;
TYPE EMP_ARRAY IS TABLE OF EMP%ROWTYPE;
E EMP_ARRAY;
BEGIN
F1: =UTL_FILE.FOPEN('XYZ','EMP.TXT','W');
SELECT * BULK COLLECT INTO E FROM EMP;
FOR I IN E. FIRST..E.LAST
LOOP
UTL_FILE.PUT_LINE (F1, E(I). EMPNO||','||E(I). ENAME||','||E(I).
SAL);
END LOOP;
UTL_FILE.FCLOSE(F1);
END;
/

EX4: PROGRAM TO READ EMPLOYEE DATA FROM TEXT FILE:


DECLARE
F1 UTL_FILE.FILE_TYPE;
S VARCHAR2(1000);
BEGIN
F1: =UTL_FILE.FOPEN('XYZ','EMP.TXT','R');
LOOP
UTL_FILE.GET_LINE (F1, S);
DBMS_OUTPUT.PUT_LINE(S);
END LOOP;
EXCEPTION
WHEN NO_DATA_FOUND THEN
UTL_FILE.FCLOSE(F1);
END;
/

NOTE:
TO VIEW DIRECTORY RELATED TO PHYSICAL PATH THEN USE THE
FOLLOWING
DATADICTIONARY IS "ALL_DIRECTORIES ".

EX:
SQL> DESC ALL_DIRECTORIES;
SQL> SELECT DIRECTORY_NAME, DIRECTORY_PATH FROM
ALL_DIRECTORIES;
DIRECTORY_NAME DIRECTORY_PATH
------------------------------- ------------------------------
XYZ E:\SUDHAKAR

SYNTAX TO DROP DIRECTORY:


SQL> DROP DIRECTORY <DIRECTORY NAME>;

EX:
SQL> DROP DIRECTORY XYZ;

You might also like