#mysql #bash #command-line
#mysql #bash #командная строка
Вопрос:
Я пытаюсь удалить случайные символы, которые оказались в таблице MySQL. Итак, чтобы удалить _
, я просто сделал это:
UPDATE table SET field = REPLACE(field, '_', '');
Теперь я пытаюсь сделать то же самое с ¬
, но я не могу поместить этот символ в командную строку (bash). Есть какие-либо советы по кодированию / экранированию этого символа?
Комментарии:
1. попробуйте сначала нажать ctrl-V, прежде чем вставлять символ. Это escape-последовательность для большинства командных строк командной оболочки.
2. Экранирование с помощью
не работает — это даже не позволяет мне вставить символ. Ctrl-V, похоже, ничего не делает (я использую Mac OS X terminal, если это имеет значение).
Ответ №1:
Это зависит от вашего языка, но если вы используете UTF-8, то это работает для меня:
echo -e ‘302254’
Обновить:
Это делает это для вас?
mysql> select x'c2ac';
---------
| x'c2ac' |
---------
| ¬ |
---------
1 row in set (0.00 sec)
Комментарии:
1. Спасибо, это работает в командной оболочке, но не в команде MySQL. Таблица базы данных имеет формат utf8.