- 1. 概要
- 2. コピー
- 6. 参考サイト
1. 概要
表題に少し付け加えます。
同じデータベース内で、テーブルをコピーするのは、比較的簡単。
「SQL」だけで、いけるかと思います。
ここでやりたいのは、別々のデータベースに、片方のデータベース内のあるテーブルを構造・データはそのままに、別のデータベースへ移植したいのです。
ついでに、テーブル名も変更しちゃいたい・・・というわけなんですな。
2. コピー
コマンド3つで、できるようです。
データベースを「db1」「db2」、テーブル名を「old_table」「new_table」として。
pg_dump -h localhost -U postgres -d db1 -t public.old_table > dump.sql
sed 's/old_table/new_table/g' dump.sql > dump_new.sql
psql -h localhost -U postgres -d db2 -f dump_new.sql
「;」で連結して、1発でもできますが、慎重にやるには、3回に分けた方がよさそうです。
6. 参考サイト
本ページは、「ChatGPT」くんを参考にさせていただきました。
|
|