Использование REPLACE с escape-символами в phpMyAdmin - PullRequest
5 голосов
/ 26 января 2012

У меня есть база данных информации, которая была отправлена ​​с веб-сайта.Данные основного столбца были введены с использованием Markdown и содержат много текста, который выглядит следующим образом:

Walgreens (www.walgreens.com) is the nation\\\'s largest drugstore chain.

Мы переключаемся на другой редактор wysiwyg, и нам нужно очистить данные.Я пытался сделать это в phpMyAdmin:

UPDATE sc_answer
SET answer_text = REPLACE (answer_text, '\\\', '')
WHERE sc_answer_id = 24806

, но я получаю сообщение об ошибке:

#1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ''\\\', '') WHERE sc_answer_id = 24806' at line 3

Кто-нибудь может мне помочь?Что мне нужно сделать, чтобы заставить это работать?

1 Ответ

4 голосов
/ 26 января 2012

Для каждой обратной косой черты \ в текстовом поле используйте 2 обратной косой черты в SQL. Например, если ваша таблица выглядит так:

mysql> select * from foo;
+----+---------------------------------------------------------------------------+
| id | bar                                                                       |
+----+---------------------------------------------------------------------------+
|  1 | Walgreens (www.walgreens.com) is the nation\\\'s largest drugstore chain. |
+----+---------------------------------------------------------------------------+
1 row in set (0.00 sec)

тогда

mysql> update foo set bar = REPLACE(bar,'\\\\\\','') where id = 1;
Query OK, 1 row affected (0.00 sec)
Rows matched: 1  Changed: 1  Warnings: 0

mysql> select * from foo;
+----+------------------------------------------------------------------------+
| id | bar                                                                    |
+----+------------------------------------------------------------------------+
|  1 | Walgreens (www.walgreens.com) is the nation's largest drugstore chain. |
+----+------------------------------------------------------------------------+
1 row in set (0.00 sec)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...