sqlldr只能导入,导出方法:
1. 开发工具:
PL/SQL Developer、Toad 导出
2. 使用spool
$ sqlplus scott/tiger @spool.sql
$ vi spool.sql
set linesize 3000
set pagesize 0
set feedback off
set echo off
set termout off
set trimout on
set trimspool on
spool employee.data
select employee_id||','||employee_name||','||employee_salary from employee;
spool off
spool manager.data
select employee_id||','||employee_name||','||employee_salary from manager;
spool off
3. 使用UTL_FILE:
使用具有DBA权限的用户创建DIRECTORY名为“CZW_DIR”
SQL> create directory czw_dir AS '/home/oracle/data';
SQL> grant read, write on directory czw_dir to scott;
SQL> conn scott/tiger
SQL>
DECLARE
HANDLE UTL_FILE.FILE_TYPE;
BEGIN
HANDLE := UTL_FILE.FOPEN('CZW_DIR','DEPT.TXT','W',1000);
FOR I IN (SELECT T.DEPTNO||','||T.DNAME||','||T.LOC AS MSG FROM SCOTT.DEPT T) LOOP
UTL_FILE.PUT_LINE(HANDLE,I.MSG);
END LOOP;
UTL_FILE.FFLUSH(HANDLE);
UTL_FILE.FCLOSE(HANDLE);
END;
/
SQL>! cat /home/oracle/data/DEPT.TXT
10,ACCOUNTING,NEW YORK
20,RESEARCH,DALLAS
30,SALES,CHICAGO
40,OPERATIONS,BOSTON