Задать вопрос
@Souvel1
Web-программист. Разрабатываю на WordPress.

Как сделать unique для текстового столбца MySQL?

Как сделать так, чтобы было уникальное значение в поле для текстового значения?

Если делать это через phpmyadmin, то выдаёт ошибку:
#1170 - BLOB/TEXT column 'url' used in key specification without a key length


Гуглить пробовал, но ничего не понял и некоторые решения не срабатывали
  • Вопрос задан
  • 2048 просмотров
Подписаться 1 Оценить Комментировать
Помогут разобраться в теме Все курсы
  • Skillbox
    Java-разработчик
    8 месяцев
    Далее
  • Shultais Education
    Основы SQL
    3 месяца
    Далее
  • OTUS
    PHP Developer. Professional
    5 месяцев
    Далее
Пригласить эксперта
Ответы на вопрос 4
Rsa97
@Rsa97
Для правильного вопроса надо знать половину ответа
Индекс ограничен по длине. Для TEXT надо явно указывать, сколько первых символов текста используется в индексе.
CREATE TABLE `test` (
  `field` TEXT NOT NULL,
  PRIMARY KEY (`field`(10))
);
Ответ написан
Иногда суть проблемы кроется в тексте ошибки
Ответ написан
Комментировать
@retvizan
имхо, только через триггеры до обновления/вставки
при наличии такого значения отмена операции
Ответ написан
Комментировать
@GiGaHerz
Возможно вам поможет
INSERT WHERE NOT EXISTS
Ответ написан
Комментировать
Ваш ответ на вопрос

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

Похожие вопросы