全て、
COPY TOコマンドを使用してテーブルにデータを一括挿入しようとしていますが、一意キーエラーを回避できないようです。これが私のワークフローです。
別のサーバーに移動したいデータのダンプを作成する
COPY (
SELECT *
FROM mytable
WHERE created_at >= '2012-10-01')
TO 'D:\tmp\file.txt'
ターゲットDBに新しい「一時」テーブルを作成し、そのようにデータをコピーします。
COPY temp FROM 'D:\tmp\file.txt'
ここで、データを「temp」テーブルからターゲットDBのマスターテーブルに移動したいと思います。
INSERT INTO master SELECT * FROM temp
WHERE id NOT IN (SELECT id FROM master)
これは正常に実行されますが、何も挿入されず、フィールドは更新されません。誰かがここで何が起こっているのか手がかりを持っていますか?tempとmasterのスキーマは同じです。この問題に関するどんな助けも素晴らしいでしょう!Postgresql9.2を使用しています
アダム