Hallo zusammen,
die Tabelle habe ich jetzt gesichert. Jetzt versuche ich die Datensätze löschen und bekomme immer wieder den Fehler.
SRMPROTOCOL ist eine Protokollierungstabelle. Ich möchte alle Einträge (ca. 46.000.000) den Benutzer QB aus der Tabelle löschen.
Auf unserem Test-System, wo nur 100.000 Einträgen sind, funktioniert es:
***********************************************
REPORT Z_SRMPROTOCOL_LOESCHEN.
PARAMETERS p_client TYPE srmprotocol-MANDT.
PARAMETERS p_user TYPE srmprotocol-xuser.
PARAMETERS pa_time TYPE srmprotocol-TIMESTAMP.
PARAMETERS pe_time TYPE srmprotocol-TIMESTAMP.
PARAMETERS pi_time TYPE srmprotocol-TIMESTAMP.
DATA it_srmprot TYPE srmprotocol.
WHILE pa_time < pe_time.
SELECT * from srmprotocol CLIENT SPECIFIED
into CORRESPONDING FIELDS OF it_srmprot
WHERE mandt = p_client
AND xuser = p_user
AND timestamp <= pa_time.
DELETE srmprotocol FROM it_srmprot.
CLEAR it_srmprot.
ENDSELECT.
pa_time = pa_time + pi_time.
ENDWHILE.
**********************************
Auf dem System mit 50.000.000 Einträgen,wenn ich versuche ca. 1.000.000 Einträgen löschen (ich steuere es über time-parameter), bricht nach einer gewissen Zeit den Report mit DB-Fehler ab.
Und ich kann nicht erklären warum?
Für jeden Tipp bedanke ich mich.