2017-01-03 3 views
0

У меня есть стол - Назначение. Колонки: ID, дата, время, Doctor_AssignedКак сделать два или более столбца уникальными в PHPMyAdmin?

То, что я пытаюсь предотвратить:

ID = 1, Дата = 1/1/2017, время = 3pm, Doctor_Assigned = DoctorA

ID = 2, Date = 1/1/2017, Time = 3pm, Doctor_Assigned = DoctorA

Дата и время столбца и имя доктора_Ассигнованные не должны быть одинаковыми для двух строк данных.

Что я хочу:

ID = 1, Дата = 1/1/2017, время = 3pm, Doctor_Assigned = DoctorA

ID = 2, Date = 1/1/2017 , Time = 3 вечера, Doctor_Assigned = DoctorB

же дата и время, разные доктор или наоборот.

Я знаю, что есть уникальная кнопка для установки столбца, но не двух или более столбцов. Спасибо заранее!

ответ

0
UNIQUE(Date, Time, Doctor_Assigned) 

Давайте предположим, что вы хотите ID быть первичным ключом и для остальные из них, вы не хотите, чтобы повторить набор, то вы можете использовать это:

CREATE TABLE users (
    ID int(4) unsigned NOT NULL AUTO_INCREMENT, 
    Date varchar(255) NOT NULL, 
    Time varchar(255) NOT NULL, 
    Doctor_Assigned varchar(255) NOT NULL, 

    PRIMARY KEY (ID), 
    UNIQUE(Date, Time, Doctor_Assigned) 

) ENGINE=InnoDB; 

Это делает Дата, время, Doctor_Assigned Уникальный как набор.

+0

Большое вам спасибо! Я думал, что 'UNIQUE (Date, Time, Doctor_Assigned)' состоит в том, чтобы сделать каждый столбец уникальным, не будучи набором. – Renzo

+0

В любое время @Renzo! –

Смежные вопросы