Hai I have created a procedure for reading a flat text file using utl_file.The coding is create or replace procedure text_copy(test varchar) as declare vSFile utl_file.file_type; vNewLine VARCHAR2(200); begin vSFile := utl_file.fopen('AUTO_MAIL', 'test','r'); IF utl_file.is_open(vSFile) THEN LOOP utl_file.get_line(vSFile, vNewLine); IF vNewLine IS NULL THEN EXIT; END IF; INSERT INTO test (fld1, fld2) VALUES (vNewLine, 'test.txt'); end loop; end if; EXCEPTION WHEN NO_DATA_FOUND THEN dbms_output.put_line('No data found'); END; utl_file.fclose(vSFile); END; / show err; --select * from test; and i have one error. PLS-00103: Encountered the symbol "DECLARE" when expecting one of the following: begin function package pragma procedure subty pe type use form current cursor external language The symbol "begin" was substituted for "DECLARE" to continue. Pls try to rectify my problem... Regards Srikkanth.M