У меня есть стол ученика и стол курса. Один студент может участвовать во многих курсах, и студент может оплатить только ту плату за курс, к которому он привлечен. Как я могу создать отношения для этой проблемы.
microsoft-access
Ашиш Пудель
источник
источник
Ответы:
Вам нужна промежуточная таблица, которая будет содержать данные «Студенты к курсам», эта таблица может иметь много строк для данного студента, например: Studennt1-Course1, Student1-Course2 и т. Д. ... SQL для получения курсов данного студента было бы:
ВЫБЕРИТЕ Courses.Courses_id, Courses.Description FROM Courses. INNER JOIN Учащиеся-курсы ON Courses.Courses_id = Students-Courses.Courses_id INNER JOIN Учащиеся ON Students-Courses.Student_id = Students.Student_id ГДЕ Courses.Course_id = 33
Лучше всего было бы использовать только числовые идентификаторы в этой промежуточной таблице, и эти числовые идентификаторы должны быть первичным ключом в таблицах «Студенты» и «Курсы», соответственно, в качестве авто-числового столбца для каждого экземпляра. Промежуточная таблица будет выглядеть так: id_students_courses (autonumeric), Students_id, courses_id. Id_students_courses будет первичным ключом для таблицы отношений.
источник