私は、挿入クエリをバックアップデータベースに書き込もうとしています。私はplaceとentitiesテーブルをこのデータベースに書いています。問題はエンティティがplace.id列を介してプレースにリンクされていることです。私はplaceテーブルに列place.original_idを追加して元の「id」を格納しました。だから今私は新しいデータベースに入れたidカラムを変更しましたが、元のidが保存されているので、エンティティテーブルをそれにリンクすることができます。postgresデータベースに挿入する
insert into entities_backup (id, place_id)
select
nextval('public.entities_backup_id_seq'),
(select id from places where original_id = (select place_id from entities) as place_id
from
entities
私は、これは動作しませんので、私は何かが欠けています知っている:私はこれまでのところ、私はこの時点で午前新しいIDに
を取得するためにエンティティを作成する方法を把握しようとしています。私は、entity.place_id = places.original_idの場所からID列を取得する必要があります。どんな助けも素晴らしいだろう。
[Postgresに組み込まれたバックアップと復元の仕組み](https://www.postgresql.org/docs/9.1/static/backup.html)を使用したことはありますか?セミコロンがそこにあるはずですか? – Schwern
いいえ、コンマであるとします。私は実際にこれらのテーブルをこのpostgresデータベースにコピーして保存しています。その一度だけのプロジェクト。元のデータはオラクル表にあります。私は元のデータを混乱させずに別のプロジェクトで使用できるように、それをpostgresに持っていくだけです。 ID列は完全に一致しません。 –
Oracleダンプはどのようにしましたか?オラクルから「場所」と「エンティティ」の両方が提供されましたか? – Schwern