Update DB-Tabelle

Getting started ... Alles für einen gelungenen Start.
7 Beiträge • Seite 1 von 1
7 Beiträge Seite 1 von 1

Update DB-Tabelle

Beitrag von L0w-RiDer (Expert / 535 / 83 / 2 ) »
Hallo,

ich habe ein Programm geschrieben, welches ein Feld von einer DB-Tabelle ändern soll. Nun lese ich zunächst alle Daten in eine interne Tabelle ein und verändere diese Feld. Anschließend möchte ich mit dieser internen Tabelle die DB-Tabelle updaten (also die Veränderung übertragen).

Ich habe bei meiner internen Tabelle allerdings nur den Schlüssel und das eine Feld, was ich verändern möchte mitgegeben ( aus Performancegründen etc.).

Update DB-Tabelle from table itab.

Wäre mal mein grober Ansatz, der leider nicht stimmt.

Wie macht man es richtig??

Vielen Dank im Voraus.

gesponsert
Stellenangebote auf ABAPforum.com schalten
kostenfrei für Ausbildungsberufe und Werksstudenten


Re: Update DB-Tabelle

Beitrag von black_adept (Top Expert / 4083 / 125 / 938 ) »
Ganz grob ( Ohne Sperrlogiken ) für eigene Tabellen oder ZZ-Felder in SAP-Tabellen ohne Changeloganschluss:

Code: Alles auswählen.

loop at itab assigning <itab>.  
update dtab set feld = @<itab>-feld where tabellenschlüssel = @<itab>-tabellenschlüssel.
endloop.
commit work.

Folgende Benutzer bedankten sich beim Autor black_adept für den Beitrag:
L0w-RiDer

live long and prosper
Stefan Schmöcker

email: stefan@schmoecker.de

Re: Update DB-Tabelle

Beitrag von L0w-RiDer (Expert / 535 / 83 / 2 ) »
Danke schon mal.

Damit werden aber nun wirklich auch nur die Zeilen verändert auf die der Schlüssel passt, oder? Die anderen bleiben unberührt??

Ich bin da vorsichtig bei sowas....

Re: Update DB-Tabelle

Beitrag von SaskuAc (Specialist / 321 / 37 / 44 ) »
dafür ist ja die where bedingung da. Also ja, es werden nur die Zeilen berührt, die in der der Where-Bedingung raus kommen ( also dem schlüssel entsprechen )

Re: Update DB-Tabelle

Beitrag von ewx (Top Expert / 4843 / 311 / 638 ) »
L0w-RiDer hat geschrieben:
02.10.2019 15:47
Ich bin da vorsichtig bei sowas....
In dem Fall legt man sich eine Testtabelle an, füllt diese mit Testdaten und schreibt ein Testprogramm, mit dem man das Verhalten prüfen kann.

Folgende Benutzer bedankten sich beim Autor ewx für den Beitrag:
L0w-RiDer


Re: Update DB-Tabelle

Beitrag von DeathAndPain (Top Expert / 1936 / 255 / 411 ) »
Trotzdem gefällt mir die ganze Vorgehensweise nicht.
Ich habe bei meiner internen Tabelle allerdings nur den Schlüssel und das eine Feld, was ich verändern möchte mitgegeben ( aus Performancegründen etc.).
Die Performance ist bei Deinem Ansatz mies, denn Datenbankzugriffe sind das Teuerste, was Du machen kannst, so dass Du bestrebt sein solltest, diese auf ein Minimum zu reduzieren. Es wäre besser, Du würdest Deine interne Tabelle wie die Datenbanktabelle definieren, alle Felder reinziehen, wunschgemäß verändern und dann nur einen einzigen UPDATE dbtab FROM TABLE itab ausführen. Die Hauptspeicherbelastung sollte nicht so groß sein, wenn Du Deine interne Tabelle im Anschluss gleich wieder freigibst (typischerweise weil Du sie lokal definiert hast und Deine Unterroutine nach dem UPDATE endet, notfalls aber auch, weil Du gleich im Anschluss einen FREE-Befehl absetzt).

Folgende Benutzer bedankten sich beim Autor DeathAndPain für den Beitrag:
L0w-RiDer


Re: Update DB-Tabelle

Beitrag von L0w-RiDer (Expert / 535 / 83 / 2 ) »
Vielen Dank an alle.

Ich habe jetzt noch ein paar Änderungen vorgenommen und habe es programmiert und getestet und hat alles wunderbar funktioniert :).

Seite 1 von 1

Vergleichbare Themen

1
Antw.
1663
Views
Update über Tabelle
von Gast » 15.04.2005 12:19 • Verfasst in ABAP Objects®
0
Antw.
848
Views
SAP QM Update der Tabelle QAMV
von SAP_ENTWICKLER » 20.04.2018 08:12 • Verfasst in ABAP® Core
5
Antw.
902
Views
Update Tabelle RESB
von ZF_SAPler » 01.06.2022 17:14 • Verfasst in ABAP® für Anfänger
4
Antw.
13199
Views
Update einer internen Tabelle
von David11384 » 08.05.2008 14:49 • Verfasst in ABAP® für Anfänger
0
Antw.
530
Views

Newsletter Anmeldung

Keine Beiträge verpassen! Wöchentlich versenden wir lesenwerte Beiträge aus unserer Community.
Die letzte Ausgabe findest du hier.
Details zum Versandverfahren und zu Ihren Widerrufsmöglichkeiten findest du in unserer Datenschutzerklärung.

Unbeantwortete Forenbeiträge

Daten an Tabelle binden
vor einer Stunde von Bright4.5 1 / 42
aRFC im OO-Kontext
vor 4 Wochen von ralf.wenzel 1 / 1699
Hilfe bei SWEC/SWE2
letzen Monat von retsch 1 / 8304