如何将oracle表导出为平面文件?

问题描述 投票:0回答:3

我是Oracle新手。我有一个新手问题。如何将表(在Oracle中)转储到平面文件?我需要输出两个数据表。到目前为止,我有这个但有点困惑。

exp userName/Password @DBName file=filename.dmp tables=tablename rows=y indexes=n triggers=n grants=n

什么在file = filename.dmp下?文件名是什么?那是语法的一部分吗?任何帮助表示赞赏!

database oracle oracle11g oracle10g
3个回答
0
投票

您指定的路径是数据库服务器上的路径,而不是本地硬盘驱动器上的路径。您必须连接到服务器的计算机并获取文件。


0
投票

我不确定你能用exp来做到这一点。尝试在sqlplus中使用spool

Spool c:\output.txt

select * from tablename;

Spool off

0
投票

阅读heretherehere

您有关于如何通过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
© www.soinside.com 2019 - 2024. All rights reserved.