Stránka 1 z 1
Nahrazení spousty řetězců v MySQL
Napsal: 21 říj 2009 15:24
od PreTox
Zdravím všechny, mám dotaz pro znalé MySQL - mám několik tabulek a v ní je spousta dat (články) od roku 2000. Jenže borec, co to dělal předtím, tak vkládal do tabulek text ve formátu HTML (tzn. tagy <p>, <br> a podobně). Teď když jsem to po něm převzal, tak jsem udělal formátování textu jinak a potřeboval bych odstranit ze všech tabulek všechno, co tam nemá co dělat. Takže - lze přímo v MySQL vytvořit dotaz, který najde v tabulkách text a nahradí ho? Nebo to lze udělat pouze tak, že to exportuju do souboru, upravím v nějakém texťáku a naimportuju zpět?
Díky za help.

Re: Nahrazení spousty řetězců v MySQL
Napsal: 21 říj 2009 21:58
od mila79
update <název tabulky> set <název pole tabulky> = REPLACE (<název pole tabulky>, 'původní text', 'nový text') where <podmínky>
takže například:
update TABULKA set text_prispevku = replace (text_prispevku, '<br>', '')
To nahradí všechny řetězce <br> za prázdný řetězec (takže je to vymaže)
Re: Nahrazení spousty řetězců v MySQL
Napsal: 22 říj 2009 18:01
od PreTox
Hmm, ať jsem zkoušel, jak jsem zkoušel, tak se mi to nějak zprovoznit nepodařilo, pořád to psalo chybu v syntaxi a nebo že column not exist..
Ale v pohodě, napsal jsem si na to script, který projde celou zadanou tabulku a nahradí řetězce, které mám zvlášť uložené v poli. Pak jenom updatnu řádek a je to. Čekal jsem, že to poběží dlouho, ale byl to mžik

No jo, localhost je localhost.
Díkes mila79 za help.
