sql >> データベース >  >> RDS >> PostgreSQL

cmdでpgslバックアップを復元するためのpsqlエラー

    joopが説明したように、SQLファイルに一貫性がありません。

    raffle.user_idからの外部キー制約があります "user".idへ 、つまり、raffle.user_idのすべての値に対して "user"に行が必要です ここで、id 同じ値です。

    これで、"user"に行が挿入されなくなりました idを使用 1に等しいが、スクリプトはraffleに行を挿入しようとします user_idを使用 1に等しい。

    これは外部キー制約に違反し、エラーを引き起こします。 PostgreSQLトランザクションでエラーが発生した場合、実行できるのはROLLBACKだけです。 。それを行うまで、トランザクション内のすべてのステートメントは、観察したエラーで失敗します。

    唯一の解決策は、データの一貫性を保つようにデータを修正するか、外部キー制約を削除して一貫性を放棄することです。

    備考: USERのような予約済みのSQLキーワードを選択することはお勧めできません。 名前として。



    1. AテーブルからAテーブルに値を挿入します

    2. SQL関数の最初の結果のみを置き換える方法

    3. Oracleデータベースから一意の制約列名を取得する

    4. kafka connectを使用してkafkaトピックをOracleにシンクする方法は?