MySql какой тип данных выбрать для url ?

Подскажите какой тип данных выбрать для url?
да и вообще правильно ли я создал связь один к одному
CREATE TABLE `g_url` (
	`id` INT NOT NULL,
	`url` TEXT NOT NULL,
	PRIMARY KEY(`id`)
);
CREATE TABLE `g_field` (
	`id` int NOT NULL,
	`title` CHAR(30),
	`description` CHAR(30),
	PRIMARY KEY(`id`),
	FOREIGN KEY (`id`) REFERENCES g_url(`id`)
)
  • Вопрос задан
  • 11234 просмотра
Решения вопроса 1
disc
@disc
веб-разработчик
Почему бы не хранить все в одной таблице, зачем связь 1:1 ?
Тип можете выбрать VARCHAR - есть ограничение на длину либо большой по длине TEXT.
Ответ написан
Пригласить эксперта
Ответы на вопрос 3
Playmore
@Playmore
Опытный разработчик
Лишние связи не плодите. Сделайте в одну таблицу и тип поля VARCHAR с запасом (0 до 65535)
Ответ написан
Комментировать
@neol
TEXT вообще надо использовать аккуратно, так как запросы с участием BLOB/TEXT, требующие временной таблицы, всегда приводят к созданию таблицы на диске(пруф), что скорости вашим запросам явно не прибавит.

В данном случае varchar будет более чем достаточно.
Ответ написан
Комментировать
Rsa97
@Rsa97
Для правильного вопроса надо знать половину ответа
Для связи 1-1 вообще нет смысла выделять отдельную таблицу, создайте поле в основной.
Тип TEXT для url вполне подходит, только ограничьте его длину до разумных значений (IE8, например, режет до 4121 символа).
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы