2

管理者のphpを使用して、SQLデータベースで検索と置換クエリを実行したいと考えています。問題は、検索して置換したいテキストに " 文字が含まれているため、コマンドを実行すると問題が発生することです...

検索しalign="right">て置換したいalign="left">

このコマンドを実行しましたが、機能しません:

UPDATE `ps_product_lang` SET `description` = replace(`description`,"align="right">","align="left">");

だから、このクエリは " 文字があるのでどのように見えるべきなのだろうか? さらに長いテキストを検索し、SQL クエリを使用してそれを置き換えるにはどうすればよいでしょうか?

どうもありがとう

4

1 に答える 1

2

置換文字列は、文字列リテラルとして単一引用符で囲む必要があります。

UPDATE `ps_product_lang` SET `description` = replace(`description`, 'align="right">', 'align="left">');

この解決策は、列内のすべての文字description列が正確にalign="right">. align='right'> たとえば、上記の二重引用符で囲まれた属性に加えて、単一引用符で囲まれた属性がある場合は、追加の作業が必要になります。

また、これが置換を実行している HTML マークアップである場合、属性>の直後に終了が発生しない可能性は十分にあります。alignその場合、各行を HTML パーサーにロードして属性を変更する必要があります。

于 2012-10-30T18:04:01.973 に答える