我是Oracle新手。我有一个新手问题。如何将表(在Oracle中)转储到平面文件?我需要输出两个数据表。到目前为止,我有这个但有点困惑。
exp userName/Password @DBName file=filename.dmp tables=tablename rows=y indexes=n triggers=n grants=n
file = filename.dmp下的内容是什么?文件名是什么?那是语法的一部分吗? 任何帮助表示赞赏!
答案 0 :(得分:0)
您指定的路径是数据库服务器上的路径,而不是本地硬盘驱动器上的路径。您必须连接到服务器的计算机并获取文件。
答案 1 :(得分:0)
您有关于如何通过PL SQL执行此操作的详细信息。
从WIKI转载的答案 - ORAFAQ
执行以下命令以创建数据库目录。此目录必须指向与数据库在同一服务器上的有效目录:
CREATE DIRECTORY DMPDIR AS '/opt/oracle';
GRANT READ, WRITE ON DIRECTORY DMPDIR TO SCOTT;
PS:Oracle引入了一个名为DATA_PUMP_DIR的10g R2默认目录,可以使用:
SELECT
DIRECTORY_PATH
FROM
DBA_DIRECTORIES
WHERE
DIRECTORY_NAME = 'DATA_PUMP_DIR';
DIRECTORY_PATH
--------------------------------------------------------------------------------
/app/oracle/product/10.2.0/rdbms/log/
现在尝试expdp
expdp scott/tiger DIRECTORY=dmpdir DUMPFILE=scott.dmp
答案 2 :(得分:0)
我不确定你能用exp来做到这一点。尝试在sqlplus中使用spool
Spool c:\output.txt
select * from tablename;
Spool off