Hallo,

ich bin auf ein Problem gestoßen welches ich nicht ganz verstehe.

(Alles läuft derzeit ohne Commit und ohne Journal.)

Ich habe eine Tabelle SRC.
Die laufende Nummer ist der Primärschlüssel.
ObjektNr., SourceFile und SourceLib bilden einen Unique-Key.

Sätze kann ich hinzufügen, wenn es jedoch ums Löschen geht, bekommen ich IMMER eine Fehlermeldung (auch wenn die tabelle neu erstellt und leer ist).

Entferne ich den Unique-Key funktioniert alles super.

Code:
 CREATE TABLE SRC
   (SRCNR     INTEGER GENERATED BY DEFAULT AS IDENTITY,
    OBJNR     INTEGER      /* Objekt Zuordnung             */
              NOT NULL WITH DEFAULT,
    SRCF      CHAR (10)    /* Source-File (QRPGSRC, ...)   */
              NOT NULL WITH DEFAULT,
    SRCLIB    INTEGER      /* Zuordnung der Source-Lib     */
              NOT NULL WITH DEFAULT,
    SRCMBR    CHAR (10)    /* Source-File (QRPGSRC, ...)   */
              NOT NULL WITH DEFAULT,
    SRCTYP    CHAR (10)    /* Source-Typ (RPGLE, CLLE, ...)*/
              NOT NULL WITH DEFAULT,
    SRCDAT    DATE         /* AEnderungs-Datum vom Source  */
              NOT NULL WITH DEFAULT,
    CONSTRAINT SRC_PK
         PRIMARY KEY (SRCNR));
Hier werden die Fremdschlüssel und der Unique-Key erstellt.

Code:
 ALTER TABLE SRC
  ADD CONSTRAINT SRCOBJ_FK
      FOREIGN KEY (OBJNR)
  REFERENCES OBJ (OBJNR)
  ON DELETE CASCADE
  ON UPDATE RESTRICT;

 ALTER TABLE SRC
  ADD CONSTRAINT SRCLIB_FK
      FOREIGN KEY (SRCLIB)
  REFERENCES LIB (LIBNR)
  ON DELETE CASCADE
  ON UPDATE RESTRICT;

 ALTER TABLE SRC
	ADD CONSTRAINT SRC_UNIQUE
	UNIQUE (OBJNR, SRCF, SRCLIB);
Hier die Fehlermeldung:

Code:
strsql                                          
Teildatei SRC nicht in Journal *N aufgezeichnet.
SRC in MYLIB für Operation ungültig.
Code:
Nachricht . . . :   SRC in MYLIB für Operation ungültig.                
Ursache  . . . . :  Ursachencode ist 3. Ursachencodes:                      
    1 - SRC hat keine Teildateien.                                          
    2 - SRC wurde mit freiem Speicherplatz gesichert.                       
    3 - SRC nicht im Journal aufgezeichnet, keine Berechtigung für Journal  
  oder der Journalstatus ist *STANDBY. Dateien mit                          
  RI-Integritätsbedingungsaktion CASCADE, SET NULL od. SET DEFAULT müssen im
  selben Journal aufgezeichnet werden.
Ist bei der Verwendung eines Unique-Keys ein Journal Pflicht?

Danke für jeden Denkanstoß.
lg