PostgreSQLでテーブルの一部のデータだけエクスポート・インポート
PostgreSQLの一部のデータを移行する必要があった時のメモ
※タブ区切りです
DBでのインポート・エクスポート
データベースのデータを外部ファイルに出力したり、外部ファイルからデータベースに復元したりする操作です。
そのほとんどがdumpファイルで行われることが多いですが、これはほんの一部のデータをインポート・エクスポート操作したい場合に適しています。
文字コードはあまり変えるような場面はないと思いますが、特異的な使用場面のときは注意が必要です。
エクスポート
COPYコマンドでselectし、ファイル出力先を指定すれば出力します
例
COPY (SELECT * FROM table_name WHERE id = XXX) TO ‘/sql/xxx_dump’;
インポート
こちらもCOPYコマンドでtable指定し、入れたいカラム、入力ファイルを指定すればインポートされます。(なぜかCOPYの前に「\」が必要でした。)
例
\COPY table_name (id. name…) FROM ‘/sql/xxx_dump’;