抽出条件を指定してエクスポート(exp)を実行する
文書番号:20240
Oracle Database から exp コマンドを実行してデータをエクスポートする際に抽出条件を指定して特定の行のみを出力する方法です。
exp コマンドに query キーワードを指定して条件を指定します。
【実行手順】
-
query キーワードを指定して exp コマンドを実行します。
query キーワードの前後には半角¥マークでエスケープしてダブルクオーテーションを付加します。
条件式は WHERE で開始し、複数の条件を指定する場合は通常のSQLと同様に「AND」や「OR」で接続します。
exp ユーザー/パスワード@接続文字列 file=エクスポートファイル log=ログファイル tables=テーブル名 query=\" WHERE 条件式 \"
例:exp SCOTT/PASSWORD@ORCL file=C:\scott.dmp log=C:\scott_exp.log tables=EMP query=\" WHERE DEPTNO = 10 \"
クリックで拡大
ある条件によってデータベースからエクスポートしたデータを別のデータベースへインポートしたい場合、既にテーブルが存在するとエラーになります。
既存のテーブルにデータを追加でインポートしたい場合は「IGNORE=T」を指定してインポートします。
(一定の条件で分割に複数回に分けてエクスポートしたデータをインポートしたい場合など)
imp ユーザー/パスワード@接続文字列 file=インポートファイル log=ログファイル IGNORE=T
例:「scott」ユーザーからエクスポートしたdmpを「scott2」ユーザーへインポートします。
imp SCOTT2/PASSWORD@ORCL file=C:\scott.dmp log=C:\scott_imp.log fromuser=scott touser=scott2 IGNORE=T