ERROR: insert or update on table "erezept" violates foreign key constraint "erezept_erezept_group_id_fkey" Detail: Key (erezept_group_id)=(1118)

Liebe Gemeinde.
Ich stehe seit Wochen vor einem Problem. Zu aller erst, kann ich kein bisschen programmieren und verstehe es auch nicht. Aber ich brauche dringend eure Hilfe.

In meiner Arztpraxis ist für meine Software ein Update gekommen und diese wollte ich einspielen. Leider tauchte dieses mal folgendes Problem auf. Irgendetwas kann nichts installiert werden weil anscheinend was an der Datenbank sein soll.

Ich bin wirklich komplett unwissend in der Sache, wenn ich was vergessen haben sollte, dann sagt es mir bitte. Ich versuche es zu ergänzen.

Meine Frage ist, ob es an meinem PC bzw. Datenbank liegt oder ob vielleicht was mit dem Update nicht stimmt, sodass eventuell der Softwarehersteller nachkorrigieren muss. So wie die Softwarehersteller sind, habe ich noch kein Feedback bekommen, was ich tun soll oder was genau das Problem ist.

Ich schreibe hier mal einen kurzen Ausschnitt vom Logeintrag.
Flyway OSS Edition 10.14.0 by Redgate

See release notes here: Release Notes for Flyway Engine - Flyway - Product Documentation
Database: jdbc:postgresql://localhost:5432/XXX_XXXXX_db (PostgreSQL 16.2)
Successfully validated 49 migrations (execution time 00:00.030s)
Current version of schema “XXXXXXX”: 24.20.003
Migrating schema “XXXXX” to version “24.23.001 - eRezept MV eFormular changes”

[2024-08-05T19:34:36.354] [Info] - [ERRORS]: ERROR: Migration of schema “XXXX” to version “24.23.001 - eRezept MV eFormular changes” failed! Changes successfully rolled back.
ERROR: Script V24.23.001__eRezept_MV_eFormular_changes.sql failed

SQL State : 23503
Error Code : 0
Message : ERROR: insert or update on table “erezept” violates foreign key constraint “erezept_erezept_group_id_fkey”
Detail: Key (erezept_group_id)=(1118) is not present in table “erezept_group”.
Location : sql\XXXXX\V24.23.001__eRezept_MV_eFormular_changes.sql (D:\Daten\XXXXXXXX\db_migration\flyway\sql\XXXXX\V24.23.001__eRezept_MV_eFormular_changes.sql)
Line : 104
Statement : Run Flyway with -X option to see the actual statement causing the problem

Caused by: Script V24.23.001__eRezept_MV_eFormular_changes.sql failed

SQL State : 23503
Error Code : 0
Message : ERROR: insert or update on table “erezept” violates foreign key constraint “erezept_erezept_group_id_fkey”
Detail: Key (erezept_group_id)=(1118) is not present in table “erezept_group”.
Location : sql\XXXXX\V24.23.001__eRezept_MV_eFormular_changes.sql (D:\Daten\XXXXXXX\db_migration\flyway\sql\XXXXX\V24.23.001__eRezept_MV_eFormular_changes.sql)
Line : 104
Statement : Run Flyway with -X option to see the actual statement causing the problem

Caused by: org.postgresql.util.PSQLException: ERROR: insert or update on table “erezept” violates foreign key constraint “erezept_erezept_group_id_fkey”
Detail: Key (erezept_group_id)=(1118) is not present in table “erezept_group”.

[2024-08-05T19:34:36.355] [Error] - Error while executing Flyway file
[2024-08-05T19:34:36.356] [Error] - Flyway could not execute other configurations successfully.
[2024-08-05T19:34:36.356] [Error] - Flyway could not be run successfull.
[2024-08-05T19:34:36.356] [Info] - FINISHED XXX.XXXXX.PostgreSqlInstaller Status: FlywayNotSuccessfull

Ich bedanke mich schon mal für eure Hilfe im Voraus.
Lieben herzlichen Dank
Eli

Das ist ein Fehler in der Software (bzw. dem Skript zur Datenmigration). Die versucht Daten in die Tabelle erezept einzufügen, aber den Wert 1118 gibt es in der referenzierten Tabelle (erezept_group) nicht als Primärschlüssel.

Da ist irgendwas in der Datenmigration schief gelaufen. Du wirst den Hersteller kontaktieren müssen.

Hallo lieber castrop,

der Softwareunternehmer meint, dass das nicht sein kann, dass es nur an meiner Datenbanktabellen liegen kann und deswegen auch nicht bereit sind, sich das anzugucken.
Ich weiß nicht mal wie man die Tabelle öffnet oder wo sie gespeichert sind. Leider lässt das Unternehmen mich mit dem Problem alleine und ich weiß nicht was ich tun kann.

Kann das an meinen Dateien bzw. Tabellen oder ist einfach falsch programmiert?
Lieben Dank für deine Unterstüzung.
Eli

Wer hat denn das Skript V24.23.001__eRezept_MV_eFormular_changes.sql geliefert? Dort ist der Fehler

Hallo lieber castrop,

wurde von dem Softwareunternehmen geliefert. Mit dem Update ist diese Datei mit eingeführt.
Soll ich mal den Inhalt mal hier posten ?
Vielen Dank und liebe Grüße
Eli

Das Skript wird nicht viel helfen. Da wird man ein INSERT mit dem fehlerhaften Wert für die Fremdschlüsselspalte sehen. Was allerdings der richtige Wert sein muss, kann nur der Hersteller sagen.

Hallo lieber Castorp.
Vielen lieben Dank für deine Unterstützung. Ich rede mal mit der Softwareanbieter darüber. Ich hoffe, dass Sie den Fehler einsehen. Ich kann es leider nicht so gut erklären wie du. Die können mir ja in dem Moment vieles erzählen und dann habe ich keine Argumente :frowning:. Dennoch vielen lieben Dank für die Erklärung Castorp. Jetzt weiß ich wenigstens dass es nicht an meinem Computer liegt.
Liebe Grüße und danke nochmal
Eli

Das ist einfach falsch programmiert und 100% die Schuld des Softwareherstellers.
Die erstellen die Datenbank, die Tabellen und die Constraints darauf, und sie schreiben die Daten in die Datenbank. Wer sonst sollte dafür zuständig sein? Auch wenn sie wenig Ahnung von Datenbanken haben, entläßt sie das nicht aus der Verantwortung.

Wenn sie sich weigern, würde ich meine Software von einem anderen Hersteller kaufen (und überall herumerzählen, wie beschissen der Support dieser Firma ist).

Hallo Laurenz.

Ich werde noch mal Kontakt mit dem Softwarehersteller aufnehmen und versuchen das zu klären. Ich bin auch davon ausgegangen aber ich wollte einmal die Experten fragen, bevor ich mich mit denen in ein Diskurs einlassen.
Ich schreibe mir mal die Fachbegriffen auf, die ihr hier erwähnt und versuche die Sachlage noch einmal zu erklären.
Die letzte Instanz wird wohl darauf hinauslaufen, unsere Software zu ändern.
Auch an dich vielen lieben Dank.
Eli

Du darfst den Support auch gerne auf diesen Thread verweisen :slight_smile:

Und wenn die sich auch nicht mit Postgres auskennen: @akretschmer oder @laurenz werden ihnen bestimmt gerne Schulungen anbieten :face_with_hand_over_mouth:

1 „Gefällt mir“

Lieber Castorp.
Lieb, dass du das so sagst.
Ich war mir nicht sicher ob ich hierhin verweisen kann.
Aber wenn ich nicht weiter kommen werde ich mal hierhin verweisen .

Ich habe mir schon seit Tagen sorgen gemacht, weil ich den Fehler bei mir oder Computer gesucht habe.

Ihr habt ja alle viel Ahnung davon und auch alle sehr nett. Hatte mich erst einmal gar nicht getraut, die Frage zu stellen. Jetzt bin ich sehr froh, dass ich mich doch getraut habe. :smiling_face_with_three_hearts:
Liebe Grüße
Eli