Text aus Datenbank Einträgen löschen

Ketose

Benutzer
Beiträge
5
Hallo,
ich bin im Bereich mysql ein Noob und suche Unterstützung zu folgendem Problem.
Vor Jahren hatte ich in einem Forum ein Script, das jeden geposteten Link in einen BB-Code mit einem Zusatz verändert hat, dieser Zusatz muss jetzt weg.

In der Tabelle "xf_post" der Datenbank meines XenForo-Forums befinden sich über 8000 Datensätze, die folgendes enthalten:
Code:
[URL="http://www.meinedomain.de/links.php?url=http://www.externer-Link.de/"]Linktext[/URL]

Diese Einträge sollen jetzt geändert werden in:
Code:
[URL="http://www.externer-Link.de/"]Linktext[/URL]

Also das dem eigentlichen Link vorangestellte:
Code:
http://www.meinedomain.de/links.php?url=

soll entfernt werden.

Natürlich befinden sich in den Datensätzen manchmal auf mehrere dieser Links und ne Menge anderer Text.

Wer mag mich unterstützen?

Vielen Dank

Thorsten
 
Werbung:
Wenn der Teil mit meinedomain.de statisch ist dann wäre es mit einem simplen replace() vermutlich getan:
Code:
DECLARE   @i VARCHAR(100)
SET     @i = '[URL="http://www.meinedomain.de/links.php?url=http://www.externer-Link.de/"]Linktext[/URL]'

SELECT   replace(@i,'[URL="http://www.meinedomain.de/links.php?url=','[URL="')
 
Danke, jupp
Code:
[URL="http://www.meinedomain.de/links.php?url=
ist statisch.
Allerdings sind die externen Links nicht statisch.
Hat das Einfluss auf die zweite Zeile im Code, oder ist danach egal um welche externe URL es sich handelt???
 
Also mit replace() suchst du nach einem (statischen) Text und ersetzt ihn durch einen anderen. Wird er nicht gefunden wird auch nichts ersetzt, alles andere drum herum bleibt bestehen.
 
Das ist einfach nur ein Testcode: Ich deklariere eine Variable, belege sie mit deinem gelieferten Ausgangswert und wende replace() darauf an.

Du wirst einfach nur
Code:
UPDATE tabelle SET spalte = replace(spalte,'suchtext','ersatztext')
brauchen.
 
Ahh, jetzt ja!
War verwirrt, wegen der ersten beiden Zeilen.

Tabelle = Tabellenname = "fx_post"
Spalte = ???

Danke, das so so viel Geduld mit mir hast...
 
Ich kenne deine Datenbankstruktur nicht und ganz erlich, wo deine Links stehen musst du schon selber wissen. Wer das nicht nachvollziehen kann, läßt das besser ein Systemhaus machen sonst geht noch was kaputt.
 
Werbung:
Zurück
Oben