Alle Zeichenketten in einer Datenbank ändern

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

Alle Zeichenketten in einer Datenbank ändern

Beitrag von Gorben (ForumUser / 2 / 0 / 0 ) »
Hallo allerseits,

ich habe angefangen mich in ABAP ein zu arbeiten.
Bei einer Übungsaufgabe bin ich auf ein Problem gestossen.

Dazu erst das Ist-Szenario:
In einer bestehenden Datenbank gibt es mehrere Zeilen, die mit verschiedenen Links befüllt sind.
Beispiel: „I:\System\Vorlagen\.....“

Diese Links sind nun nicht mehr aktuell, da es den betreffenden Server nicht mehr gibt.

Aufgabe des zu erstellenden Programmes ist die Links zu verändern.
Die Links sollen jetzt folgender maßen aussehen:
Beispiel: K:\SystemNeu\VorlagenNeu


Ich habe bis jetzt folgendes ausbaldowert:

REPORT Z_Link_aendern.

DATA: datenfeld(19) TYPE c VALUE 'I:\System\Vorlagen\KB\VL\',

kette1(33) TYPE c VALUE
'System\Vorlagen\KB',

kette2(43) TYPE c VALUE
'SystemNEU\VorlagenNEU\KB'.


REPLACE kette1 WITH kette2 INTO datenfeld.


Eine Zeichenkette zu ändern, ist nicht das Problem, aber ich weiß nicht, wie ich das auf eine ganze Datenbanktabelle anwenden kann.

Könntet ihr mir bitte dabei helfen?

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


Re: Alle Zeichenketten in einer Datenbank ändern

Beitrag von Unit605 (Expert / 975 / 37 / 93 ) »
Da sich noch keiner erbarmt hat, hier eine kleine kurze Anleitung:

Alle relavanten Daten per SELECT von der Datenbank in eine interne Tabelle selektieren.
Dann über diese interne Tabelle loopen und die Sätze entsprechende ändern.
Danache die Daten wieder in der Datenbank "updaten".

Code: Alles auswählen.

SELECT "daten" from Table into internal_Table
          Loop at internal_Table into Workarea.
                  .... Bearbeitung, vielleicht noch daten prüfen.
                  .... replace.....
                  ..... was immer Du machen willst.
          Endloop.
Update Datenbank from Internal_table.

Re: Alle Zeichenketten in einer Datenbank ändern

Beitrag von ewx (Top Expert / 4889 / 319 / 644 ) »
Es gibt auch den REPLACE-Zusatz "IN TABLE". Da spart man sich den Loop drumherum.
Ansonsten wäre es geschickter mit "LOOP AT itab ASSIGNING <wa>" zu arbeiten. Erstens geht es schneller und zweitens muss der geänderte String nicht wieder mit MODIFY in die Tabelle zurück geschrieben werden.

Re: Alle Zeichenketten in einer Datenbank ändern

Beitrag von Unit605 (Expert / 975 / 37 / 93 ) »
ok... oder.....

update database set 'neuer Path' where 'alter Path'.

:P

Re: Alle Zeichenketten in einer Datenbank ändern

Beitrag von ewx (Top Expert / 4889 / 319 / 644 ) »
oder so! ;)
Funktioniert dann nicht mehr, wenn man z.B. REPLACE mit REGEX verwenden möchte... :P

Re: Alle Zeichenketten in einer Datenbank ändern

Beitrag von Gorben (ForumUser / 2 / 0 / 0 ) »
Danke für die Hilfe!

Seite 1 von 1

Vergleichbare Themen

4
Antw.
17610
Views
Zeichenketten verknüpfen
von Preacha » 06.08.2008 13:54 • Verfasst in ABAP® für Anfänger
2
Antw.
1469
Views
Zeichenketten verschieben
von mk_02 » 27.03.2022 15:20 • Verfasst in ABAP® für Anfänger
2
Antw.
2285
Views
4
Antw.
3397
Views
Datenbank PNP(CE)
von Michael Weyland » 17.03.2016 15:39 • Verfasst in Human Resources
3
Antw.
3198
Views
Update auf Datenbank
von SAP_ENTWICKLER » 22.09.2015 14:47 • Verfasst in ABAP® Core

Über diesen Beitrag


Unterstütze die Community und teile den Beitrag für mehr Leser und Austausch

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

GUIXT Tabellen in Container ansprechen
vor 4 Wochen von Denaris 1 / 29507
Speichern Popup in MM42 verhindern
vor 4 Wochen von Noodl 1 / 29908
Meine Inbox
letzen Monat von Rabea1103 1 / 45174