Каков наилучший тип данных для хранения URL-адресов в базе данных MySQL?
Идеал был бы тем, что не занимает много места, но может легко обрабатывать URL-адреса переменной длины.
Если по ссылкам вы ссылаетесь на ссылки на веб-страницы, я предполагаю, что вы хотите сохранить URL.
Поскольку URL-адреса представляют собой строки с переменной длиной тип данных VARCHAR
, кажется очевидным выбором.
Вы можете хранить URL-адреса как простые строки, но будьте осторожны при сравнении значений, поскольку URL-адреса могут появляться в разных формах, фактически представляя одно и то же местоположение (например, с/без исходного идентификатора протокола или с/без конечной косой черты).
Я рекомендую поле 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);