2012-06-26 2 views
0

У меня есть база данных mysql, в которой есть текст, хранящийся в нем, с незашифрованными специальными символами. Пример: есть ячейки в таблице, которые имеют текст, такой как Texas A&MConvert All mysql Text to ascii form

Я хочу, чтобы весь текст в моей базе данных имел соответствующую форму ascii. Пример: Texas A&M должен быть Texas A&M.

Это большая база данных, и я хочу, чтобы все символы в this ASCII chart были учтены и преобразованы.

Что такое хороший способ сделать это?

ответ

1

Вы говорите, что хотите убедиться, что все символы в «этой диаграмме ASCII», но в диаграммах есть все печатные символы, поэтому я не думаю, что вы действительно хотите делать то, что вы говорите. Вместо этого вы, вероятно, хотите кодировать XML, URL или HTML.

Самый простой способ - загрузить данные в любой инструмент обработки XML, который у вас есть, и позволить ему выполнять эту работу. Тем не менее, я обнаружил, что 99% времени, когда люди хранят «предварительно закодированные» данные, на самом деле они этого не хотят: они хотят кодировать данные для некоторого вывода. Гораздо лучше хранить данные в своей собственной форме, а затем кодировать их при использовании/выходе.

Причина проста: когда-либо видели приложение, где названия окон выглядят как "Installing X&Y Application"? Это связано с тем, что данные воспринимались как «только для веб-вывода» и предварительно кодировались. Но даже тогда веб-выход отличается в контекстах HTML, URL и XML-обмена, поэтому предварительно кодированные данные действительно помещают вас в один из этих вариантов, а не делают правильную кодировку во время вывода.

Если вы действительно хотите это сделать, вам необходимо предоставить более подробную информацию об окружающей среде, которую вы используете (фактический тип базы данных и доступные языки программирования).

+0

Вы правы, цель конверсии заключается в том, что данные используются на веб-сайте, будут передаваться через вызовы веб-сервисов, возвращающих xml (на мобильные устройства). Я думал о преобразовании символов перед их отправкой (в частности, на мобильный устройство), однако я предположил, что под нагрузкой было бы лучше фактически иметь предварительно преобразованные данные. Разве это не было бы большой сделкой? – Sababado

+0

Было бы преимуществом предварительное преобразование данных, если данные в основном статичны, поэтому стоимость конверсии и хранения может сама заплатить. Количество обращений к данным будет определять, где находится разрыв. Для положительного примера многие системы управления контентом в Интернете хранят таблицу «Cached», в которой хранятся экранированные версии. В этом контексте они создаются при доступе, если кешированная копия не существует * или * исходные данные были изменены. Обратите внимание, что даже в этом контексте исходные данные сохраняются, кеш предварительно визуализируется и экранируется, поскольку использование * only * выводится в HTML. – Godeke

+0

Данные в основном статичны. Некоторые данные могут меняться один раз в год. Ожидается достойная ожидаемая от 6 до 8 тыс. Запросов веб-сервисов в день (веб-сайт уже обслуживает около 12 тыс. В день). Кэшированная БД - это хорошая идея, хотя я должен убедиться, что в настоящее время достаточно места для хранения. – Sababado