## -7008: Updates of this table not allowed

### Erläuterung:

Die angegebene Tabelle kann nicht geändert werden. Dafür kann es folgende Ursachen geben:

...

1. Im Falle einer SQL-Anweisung mit der Angabe von CURRENT OF und Ergebnistabellenname ist die angegebene Tabelle nicht die, die in der FROM-Klausel der QUERY-Anweisung stand, die die angegebene Ergebnistabelle erzeugte.

2. Die SQL-Anweisung enthält eine korrespondierende Subquery (Correlated Subquery), die die zu ändernde Tabelle verwendet.

3. Der QUERY-Ausdruck wurde mit FOR UPDATE spezifiziert. Der QUERY-Ausdruck enthält aber Anweisungsteile, die zusammen mit der Angabe von FOR UPDATE nicht zulässig sind (DISTINCT, GROUP CLAUSE, UNION, INTERSECT, EXCEPT, SUBQUERY).

4. Im SQL-Modus DB2 enthält der QUERY-Ausdruck einer SQL-Anweisung mit der Angabe von CURRENT OF <result_table_name> die Anweisung FOR FETCH ONLY.

### Benutzerreaktion:

...

1. Ersetzen Sie den Tabellennamen durch den in der FROM-Klausel der QUERY-Anweisung verwendeten, oder führen Sie eine neue QUERY-Anweisung durch, die den erforderlichen Tabellennamen benutzt.

2. Im Fall der korrespondierenden Subquery können Sie den gewünschten Effekt erreichen, indem eine benannte Ergebnistabelle erzeugt wird, die dann in der Subquery verwendet wird.

3. Sie müssen auf die Angabe von FOR UPDATE oder die Angabe von DISTINCT o.ä. verzichten.

4. Wiederholen Sie den QUERY-Ausdruck ohne FOR FETCH ONLY, oder verzichten Sie auf die Angabe von CURRENT OF <result_table_name> in der SQL-Anweisung.