Update-Anweisung in ABAP nicht funktioniert
Ich habe eine UPDATE
Anweisung in ABAP, die wie folgt aussieht :
UPDATE zicstt099 FROM TABLE lt_zicstt099
Das Update scheitert jedes mal mit sy-subrc eq 4
.
Die Datenbank-Tabelle ZICSTT099
hat drei primäre Tasten : WEB_USER_ID
& EMAIL_ID
zusammen mit MANDT
Feld.
Ich versuche, ändern Sie die EMAIL_ID
Wert aber das gleiche wird nicht immer Aktualisiert.
Bitte helfen.
InformationsquelleAutor Rohit Sinha | 2011-08-30
Du musst angemeldet sein, um einen Kommentar abzugeben.
Können Sie nicht ändern primary key-Felder, die über die
UPDATE <target> FROM <wa>.
undUPDATE <target> FROM TABLE <itab>.
Aussagen, da Sie verwenden Sie die primary key-lookup der Datensatz(s), die Sie aktualisieren müssen.Verwenden Sie die
UPDATE <target> SET <set1> ... WHERE ...
- Anweisung anstelle.Finden Sie die Einzelheiten hier: http://help.sap.com/abapdocu_70/en/ABAPUPDATE_SOURCE.htm#&ABAP_ALTERNATIVE_1@1@
InformationsquelleAutor René
Kann man nicht ändern '' key-Felder in Datenbanken.
Sie können löschen Sie Ihre original-Eintrag und legen Sie eine neue ein mit einem anderen Schlüssel. Aber Sie können nicht ändern, ein Schlüsselfeld. (Ich kann nicht überprüfen, die tatsächlichen, wenn
modify
tut es auf seine eigene.Wenn Sie eine änderung an einem Schlüsselfeld, sollten Sie sich Gedanken über Ihre DB-definition.
Mehr über das ändern von Schlüsselfeldern:
Können wir aktualisieren primary key Werte von einer Tabelle?
InformationsquelleAutor knut
Wenn der sy-subrc = 4, dann mindestens eine Zeile konnte nicht geändert werden, entweder, weil es keine passende Zeile gefunden wurde, oder weil die Veränderung erzeugen würde, eine Linie, die führt zu doppelten Einträgen im Primärschlüssel oder einem eindeutigen sekundärindex in der Datenbanktabelle.
Die Anweisung UPDATE setzt sy-dbcnt auf die Anzahl der veränderten Zeilen.
InformationsquelleAutor parachute
Hallo, ich habe versucht, um die Tabelle zu erstellen mit Schlüssel wie bereits erwähnt , ich rate Ihnen, verwenden Sie die folgende syntax
Überprüfen, wenn die Tabelle aktualisiert wird, können Sie Gebrauch von sy-dbcnt auf die Anzahl der Zeilen wissen aktualisiert.
wenn Sie immer noch vor Problemen kommentieren Sie bitte unten
InformationsquelleAutor Achuth hadnoor