CREATE OR REPLACE PROCEDURE EMP_CSV AS CURSOR c_data IS SELECT empno, ename, job, mgr, TO_CHAR(hiredate,'DD-MON-YYYY') AS hiredate, sal, comm, deptno FROM emp ORDER BY ename; v_file UTL_FILE.FILE_TYPE; BEGIN v_file := UTL_FILE.FOPEN(location => 'EXTRACT_DIR', filename => 'emp_csv.txt', open_mode => 'w', max_linesize => 32767); FOR cur_rec IN c_data LOOP UTL_FILE.PUT_LINE(v_file, cur_rec.empno || ',' || cur_rec.ename || ',' || cur_rec.job || ',' || cur_rec.mgr || ',' || cur_rec.hiredate || ',' || cur_rec.empno || ',' || cur_rec....