ВУЗ:
Составители:
Рубрика:
41
к полю идентификатора предмета обучения (ID_Lesson) по отдель-
ности нельзя предъявить требование уникальности. Однако для то-
го, чтобы в таблице не могли появиться разные записи для одинако-
вых комбинаций значений полей ID_student и ID_Lesson (конкрет-
ный студент на конкретном экзамене не может получить более од-
ной оценки), имеет смысл объявить уникальной комбинацию этих
полей. Для этого можно применить ограничение PRIMARY KEY,
объявив пару ID_student и ID_Lesson первичным ключом таблицы.
Пример 15. Создание таблицы Progress:
CREATE TABLE Progress
(
ID_Student INT NOT NULL CONSTRAINT to_student
REFERENCES Students(ID_Student),
ID_Lesson INT NOT NULL CONSTRAINT to_lesson
REFERENCES Lessons(ID_Lesson),
Semestr INT NOT NULL
CHECK(Semestr BETWEEN 1 AND 10),
Examen INT NOT NULL
CHECK(Examen BETWEEN 2 AND 5),
Zachet VARCHAR(10),
Kurs_rab TINYINT,
CONSTRAINT a_progress PRIMARY KEY(ID_Student,
ID_Lesson));
Составные ключи указываются через запятую после последне-
го поля:
primary key(ID_Student,ID_Lesson),
);
7.2.4. Ограничение внешних ключей
Внешний ключ – набор атрибутов, содержащий ссылки на
первичный ключ другого (или того же самого) отношения. Внешний
ключ используется для поддержания ссылочной целостности, так
как предотвращает ввод в таблицу данных, для которых нет соот-
ветствующих значений в связанной таблице.
к полю идентификатора предмета обучения (ID_Lesson) по отдель-
ности нельзя предъявить требование уникальности. Однако для то-
го, чтобы в таблице не могли появиться разные записи для одинако-
вых комбинаций значений полей ID_student и ID_Lesson (конкрет-
ный студент на конкретном экзамене не может получить более од-
ной оценки), имеет смысл объявить уникальной комбинацию этих
полей. Для этого можно применить ограничение PRIMARY KEY,
объявив пару ID_student и ID_Lesson первичным ключом таблицы.
Пример 15. Создание таблицы Progress:
CREATE TABLE Progress
(
ID_Student INT NOT NULL CONSTRAINT to_student
REFERENCES Students(ID_Student),
ID_Lesson INT NOT NULL CONSTRAINT to_lesson
REFERENCES Lessons(ID_Lesson),
Semestr INT NOT NULL
CHECK(Semestr BETWEEN 1 AND 10),
Examen INT NOT NULL
CHECK(Examen BETWEEN 2 AND 5),
Zachet VARCHAR(10),
Kurs_rab TINYINT,
CONSTRAINT a_progress PRIMARY KEY(ID_Student,
ID_Lesson));
Составные ключи указываются через запятую после последне-
го поля:
primary key(ID_Student,ID_Lesson),
);
7.2.4. Ограничение внешних ключей
Внешний ключ – набор атрибутов, содержащий ссылки на
первичный ключ другого (или того же самого) отношения. Внешний
ключ используется для поддержания ссылочной целостности, так
как предотвращает ввод в таблицу данных, для которых нет соот-
ветствующих значений в связанной таблице.
41
Страницы
- « первая
- ‹ предыдущая
- …
- 40
- 41
- 42
- 43
- 44
- …
- следующая ›
- последняя »
