В моем sql задано условие для таблицы? - PullRequest
0 голосов
/ 23 августа 2009

В mysql я могу установить условие, что комбинация двух полей никогда не может быть одинаковой ??? Пример:
ID-1
имя-а
класс-A
Теперь еще одну запись с именами = 'abc' и grade = 'A' нельзя добавить в эту таблицу ????

Ответы [ 2 ]

1 голос
/ 23 августа 2009

Вы можете создать составной первичный ключ из этих двух столбцов, но это не имеет особого смысла, поскольку в таблице уже есть поле идентификатора, и, конечно, два человека с одинаковым именем могут иметь одинаковую оценку? e.g.:

CREATE TABLE student_grades ( 
id int unsigned not null, 
name varchar not null, 
grade varchar not null, 
PRIMARY KEY(name, grade)); 
0 голосов
/ 23 августа 2009

Вы также можете добавить вторичное ограничение UNIQUE:

CREATE TABLE student_grades ( 
 id int unsigned not null, 
 name varchar(10) not null, 
 grade varchar(10) not null, 
 PRIMARY KEY(id),
 UNIQUE KEY(name, grade)
);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...