Jak wyjaśnił joop, Twój plik SQL jest niespójny.
Istnieje ograniczenie klucza obcego z raffle.user_id
do "user".id
, co oznacza, że dla każdej wartości w raffle.user_id
musi być wiersz w "user"
gdzie id
ma taką samą wartość.
Teraz nie ma wstawionego wiersza w "user"
z id
równy 1, ale skrypt próbuje wstawić wiersz do raffle
z user_id
równy 1.
To narusza ograniczenie klucza obcego i powoduje błąd. Po wystąpieniu błędu w transakcji PostgreSQL wszystko, co możesz zrobić, to ROLLBACK
. Dopóki tego nie zrobisz, wszystkie wyciągi w transakcji zakończą się niepowodzeniem z zauważonym błędem.
Jedyne rozwiązania, jakie masz, to albo naprawić dane, aby były spójne, albo zrezygnować z spójności poprzez usunięcie ograniczenia klucza obcego.
Uwaga: złym pomysłem jest wybranie zarezerwowanego słowa kluczowego SQL, takiego jak USER
jako imię.