Андрей
Высший разум
(427083)
2 недели назад
Потому, что когда ты заполняешь таблицу Оценка, ты не записываешь id сотрудника в поле id_сотрудника. Само по себе поле не заполнится. А внешний ключ нужен для того, чтобы ты не смог записать в Оценка.id_сотрудника значение, которого нет в Сотрудники.ID_сотрудника.
а когда вывожу таблицу оценка, поле айди сотрудника имеет значение нал. Почему нал? почему значение не наследуется?
CREATE TABLE Сотрудники(ID_сотрудника INT IDENTITY(1,1) PRIMARY KEY, ФИО varchar (255), должность varchar(55), отдел varchar (55), номер_телефона varchar(20), электронная_почта varchar(50)); табл сотрудники
CREATE TABLE Оценка ( ID_оценки INT IDENTITY(1,1) PRIMARY KEY,
id_сотрудника int, id_курса int ,
id_результатов int , оценка decimal,
дата_оценки date, преподаватель varchar(255),
foreign key (id_сотрудника) references Сотрудники(ID_сотрудника), foreign key (id_курса) references Курс(ID_курса)
);