Seperti yang dijelaskan joop, file SQL Anda tidak konsisten.
Ada batasan kunci asing dari raffle.user_id
ke "user".id
, yang berarti bahwa untuk setiap nilai dalam raffle.user_id
harus ada baris di "user"
dimana id
memiliki nilai yang sama.
Sekarang tidak ada baris yang disisipkan di "user"
dengan id
sama dengan 1, tetapi skrip mencoba memasukkan baris dalam raffle
dengan user_id
sama dengan 1.
Itu melanggar batasan kunci asing dan menyebabkan kesalahan. Setelah terjadi kesalahan dalam transaksi PostgreSQL, yang dapat Anda lakukan hanyalah ROLLBACK
. Sampai Anda melakukannya, semua pernyataan dalam transaksi akan gagal dengan kesalahan yang Anda amati.
Satu-satunya solusi yang Anda miliki adalah memperbaiki data agar konsisten atau melepaskan konsistensi dengan menghapus batasan kunci asing.
Keterangan: itu adalah ide yang buruk untuk memilih kata kunci SQL yang dicadangkan seperti USER
sebagai nama.