[NEWSboard IBMi Forum]
  1. #1
    Registriert seit
    Feb 2015
    Beiträge
    19

    SQLSTATE 55019

    Hallo miteinander

    Ich bekomme In einem Cobol-Pgm bei einem Delete den Status 55019 mit dem Code 7008 zurück.

    Definition Curser:

    EXEC SQL
    DECLARE VMKPF112 CURSOR WITH HOLD FOR
    SELECT
    CTNOBEF, CTNOAFT, CONROL
    FROM VMKPF112
    WHERE CTNOBEF = :SQL-CTNO AND
    CTNOAFT = :SQL-CTNO-AFT AND
    CONROL = :SQL-CONROL
    FOR UPDATE
    END-EXEC.

    Programmablauf:

    EXEC SQL OPEN VMKPF112 END-EXEC

    EXEC SQL FETCH VMKPF112 INTO
    :SQL-CTNO, :SQL-CTNO-AFT, :SQL-CONROL
    END-EXEC

    à liefert korrekte Daten

    EXEC SQL DELETE FROM VMKPF112
    WHERE :SQL-CTNO = CTNOBEF AND
    :SQL-CTNO-AFT = CTNOAFT AND
    :SQL-CONROL = CONROL
    à liefert SQLSTATE = 55019 / SQL CODE 7008 (auch ohne WHERE CLausel probiert mit gleichem Ergebnis) : 55019 The table is in an invalid state for the operation. -7008

  2. #2
    Registriert seit
    Feb 2001
    Beiträge
    20.241
    Die Zieltabelle wird nicht journalisiert.
    Ohne spezielle Angabe wird aber ein Journal gefordert damit man Commit (bestätigen) oder Rollback (zurückdrehen) durchführen kann.

    Füge vor der ersten SQL-Anweisung (in Working Storage) ein:

    exec SQL set Option commit=*None
    end-exec.
    Dienstleistungen? Die gibt es hier: http://www.fuerchau.de
    Das Excel-AddIn: https://www.ftsolutions.de/index.php/downloads
    BI? Da war doch noch was: http://www.ftsolutions.de

  3. #3
    Registriert seit
    Feb 2001
    Beiträge
    20.241
    Nachtrag:
    Ohne Where-Klausel löscht du die ganze Tabelle!
    Stell dir vor das hätte geklappt.
    Dienstleistungen? Die gibt es hier: http://www.fuerchau.de
    Das Excel-AddIn: https://www.ftsolutions.de/index.php/downloads
    BI? Da war doch noch was: http://www.ftsolutions.de

  4. #4
    Registriert seit
    Feb 2015
    Beiträge
    19
    Danke, ist bereits wieder umgestellt. Hatte Deinen emaligen Beitrag dazu gefunden und mit der Option Commiz=*none umgewandelt und siehe da, es hat funktioniert,

Similar Threads

  1. Stored Procedure SQLSTATE 428B3
    By mk in forum IBM i Hauptforum
    Antworten: 4
    Letzter Beitrag: 10-12-14, 15:31

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • You may not post attachments
  • You may not edit your posts
  •