Какой тип структуры я использую для содержимого HTML (MySQL)

#mysql #html #sql

#mysql #HTML #sql

Вопрос:

Я хочу поместить уменьшенную строку HTML в строку базы данных — имейте в виду, что это может быть довольно большая строка, какой тип структуры я использую из следующих:

http://d.pr/2URu

Я пробовал LONGTEXT , но, похоже, это не работает, когда я пытаюсь вставить.

Комментарии:

1. Что это that doesn't seem to work when I try to insert значит? Конечно, вы получаете какую-то ошибку, почему вы не упоминаете все, с чем сталкиваетесь, пробуя фрагмент кода? Мы не можем повторить вашу проблему и придумать ответ. Предположение: вы неправильно выводите кавычки и получаете ошибку SQL, которую вы не распечатываете.

2. Я думаю, вы правы, я не экранирую кавычки!

Ответ №1:

LONGTEXT вероятно, чрезмерно — он допускает размеры данных до 4 ГБ.

MEDIUMTEXT позволяет 16 МБ.

TEXT допускает 64 КБ.

TINYTEXT допускает только 255 символов.

Очень немногие HTML-документы будут иметь размер 64 КБ, поэтому a TEXT должен быть подходящим для вас. Если вы действительно хотите быть в безопасности, выберите MEDIUMTEXT .

Ссылка: http://dev.mysql.com/doc/refman/5.0/en/string-type-overview.html

Комментарии:

1. Что, если HTML содержимое будет хранить img тег с base64 ? Самым безопасным было бы LONGTEXT ?

Ответ №2:

Я бы использовал ТЕКСТ. О каких вариантах вы думали?

Комментарии:

1. Просто сохраняя вывод HTML, используя htmlentities , конечно, я попробую это сейчас.

Ответ №3:

Текст. Какой из них зависит от размера содержимого HTML, которое вы планируете хранить

Ответ №4:

Я думаю, что tinytext в порядке, если ваша страница не слишком длинная ! ?

Комментарии:

1. @Merianos — это не я проголосовал против вас, но tinytext допускает только 255 символов. Этого действительно недостаточно для безопасного хранения HTML-документа.

2. @Brogrammer большое спасибо, но просто мне хотелось бы знать, что не так с моим ответом, и проголосовал против участника, который проголосовал против меня. Еще раз большое спасибо 🙂

3. TINYTEXT не в порядке. По причине, почему это не нормально, проверьте документы MySQL и посмотрите, сколько данных TINYTEXT можно хранить. Отклонено, потому что ответ неправильный или точный. «Я думаю», не объясняя причин, почему вы не отвечаете на точные вопросы, это чистая математика.

4. Хорошо, вы правы, теперь я вижу, что это был сбой скорости. Я знал, что мне нужно выбрать ТЕКСТ, но я не был уверен в этом на 100%. В любом случае ответ на вопрос

5. -1, tinytext не подходит для HTML. На самом деле это один из худших типов для любого типа хранилища.