Каков наилучший тип данных для хранения URL-адресов в базе данных MySQL?

Вопрос:Каков наилучший тип данных для хранения URL-адресов в базе данных MySQL? Идеал был бы тем, что не занимает много места, но может легко обрабатывать URL-адреса переменной длины. Лучший ответ: Если под "ссылками" вы подразумеваете ссылки на веб-страницы, я предполагаю, что вы хотите хранить URL-адреса. Поскольку URL являются строками переменной длины , тип данных VARCHAR может

Вопрос:

Каков наилучший тип данных для хранения URL-адресов в базе данных MySQL?

Идеал был бы тем, что не занимает много места, но может легко обрабатывать URL-адреса переменной длины.

Лучший ответ:

Если под “ссылками” вы подразумеваете ссылки на веб-страницы, я предполагаю, что вы хотите хранить URL-адреса.

Поскольку URL являются строками переменной длины , тип данных VARCHAR может показаться очевидным выбором.

Ответ №1

Вы можете хранить URL-адреса как простые строки, но будьте осторожны при сравнении значений, поскольку URL-адреса могут появляться в разных формах, фактически представляя одно и то же местоположение (например, с/без исходного идентификатора протокола или с/без конечной косой черты).

Ответ №2

Мы также можем взять BLOB-тип данных в базе данных mysql для URL и ссылки на файл

Ответ №3

Я рекомендую поле VARCHAR, и длина действительно представляет собой личное мнение о том, какие URL-адреса вы планируете хранить. Вы можете уйти с VARCHAR (255) без увеличения требований к хранению для поля VARCHAR без штрафа.

CREATE TABLE example( id INT(11) UNSIGNED NOT NULL AUTO_INCREMENT PRIMARY KEY, url varchar(125) ); $url = ‘http://www.google.com’; $sql = ‘INSERT INTO example SET url = ‘ . mysql_real_escape_string($url); Ответ №4

Мы можем использовать как Varchar(255), так и BLOB. URL хранится в текстовом формате в базе данных.

Ответ №5

Поскольку длина веб-URL для разных веб-сайтов и страниц различна, поэтому целесообразно использовать тип данных с различной длиной.

например, если мы хотим сохранить “www.google.com” в нашей базе данных, это не будет проблемой, но если мы хотим сохранить ссылку для результата поиска из Google, например

https://www.google.com/search?newwindow=1&safe=active&ei=nc1SXYS2EfvKgwfmkYsQ&q=Allah&oq=Allah&gs_l=psy-ab.3..0i71l8.65605.66784..67313…0.0..0.0.0…….6….1..gws-wiz.j8DsXUL6juY&ved=0ahUKEwjE-LTPi4DkAhV75eAKHebIAgIQ4dUDCAo&uact=5

чем нам понадобится много места для этого.

Если вы создадите поле CHAR, достаточно большое для хранения этого URL-адреса, вы будете тратить значительное количество пространства практически на все остальные сохраняемые URL-адреса.
Поле переменной длины позволяет вам определить длину поля, которая может хранить нечетное длинное значение, не тратя впустую все это пространство для общих коротких значений. Текстовые поля переменной длины в MySQL используют только столько места, сколько необходимо для хранения отдельного значения в поле.

Например, поле VARCHAR (255), содержащее строку “www.google.com”, занимает всего 15 байтов (1 байт на каждый символ плюс дополнительный байт для хранения длины).
СОВЕТ: MySQL отличается от стандарта ANSI отсутствием полей VARCHAR. Любые лишние пробелы удаляются из значения перед его сохранением.

Оцените статью
Добавить комментарий