Как запретить дублирование строки?

205
18 октября 2017, 05:26

Можно ли запретить вставлять значение в таблицу, если вводимое значение уже есть в некотором столбце? Необходимо, чтобы значения не повторялись. Как такого добиться?

Answer 1

В MS SQL есть несколько вариантов которые приводят к ограничению на уникальность:

  1. Явно задать ограничение при создании таблицы

    CREATE TABLE MyTable ( ID int NOT NULL, CONSTRAINT AK_MyTable UNIQUE(ID) );

  2. Если таблице уже есть, создаем уникальный индекс по полю:

    CREATE UNIQUE INDEX indexID ON MyTable (ID);

  3. Или делаем ALTER таблицы и добавляем ограничение:

    ALTER TABLE MyTable ADD CONSTRAINT cons_MyTable UNIQUE (ID)

Все действия дадут одинаковый результат. Ответ по MS SQL добавлен с соответствием метке вопроса.

READ ALSO
Ошибка “command not found: mysql”

Ошибка “command not found: mysql”

Изучаю php и mysql по книгеДошел до раздела с mysql

336
Выборка моделей по разнице между ее datetime-полями

Выборка моделей по разнице между ее datetime-полями

У меня в mySQL есть таблица schedule у которой есть поля time_start и time_end в формате datetime

218
Запустить java файл с кастомной версией java

Запустить java файл с кастомной версией java

Добрый деньУ меня имеется некий сервер на Debian на котором я запускаю некие Java файлы

217