Vervangen Variabele string in MySQL database

Status
Niet open voor verdere reacties.

Haasje17

Nieuwe gebruiker
Lid geworden
3 mrt 2013
Berichten
3
Hallo,

Ik zit met een probleem ik heb een aantal records met het onderstaande:


[attachment=1:1toukgrg]stickers.jpg[/attachment:1toukgrg]

[attachment=0:1toukgrg]gerard.JPG[/attachment:1toukgrg]


Nu moet dat worden:

["img]http://]www.voorbeeld.nl/stickers.jpg[/img"]

["img]http://]www.voorbeeld.nl/stickers.jpg/gerard.JPG[/img"]


Dus:
[attachment=1:1toukgrg] moet vervangen worden door ["img]http://]www.voorbeeld.nl/
[attachment=0:1toukgrg] moet vervangen worden door ["img]http://]www.voorbeeld.nl/

en
[/attachment:1toukgrg] moet vervangen worden door [/img]

Nu kan ik het niet echt replace doen, want hetgeeen wat achter attacement= staat is per record en per attachement verschillend.
Hoe kan ik dit het beste doen in een sql query?

Alvast bedankt!

Ron.
 
Laatst bewerkt:
Als je vaste strings hebt die je moet vervangen dan heeft MySQL daar de replace() functie voor. *NIET* verwarren met het REPLACE statement, dat is een levensgevaarlijke actie die je data sloopt. replace() is een stringfunctie die letterlijk alle voorkomens van de ene string vervangt door een ander.
 
Heb je er een voorbeeld van? Want wat doe ik in dat geval met een waarde die variabel is maar voorgegaan word door een vaste waarde + variabele waarde van een vaste aantal tekens?
 
Want wat doe ik in dat geval met een waarde die variabel is maar voorgegaan word door een vaste waarde + variabele waarde van een vaste aantal tekens?

Weinig, daar zou je regeular expressions voor moeten gebruiken en MySQL kan geen regexps in een replace toepassen. Menig ander database heeft daar geen moeite mee, maar MySQL kan het niet.
Je zult dus een scriptje moeten maken die de replace voor je doet en botweg alle records afloopt.
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan