Eu tenho uma tabela de Alunos e uma tabela de Curso. Um aluno pode estar envolvido em muitos cursos e um aluno só pode pagar a taxa do curso que ele é invocado. Como posso criar um relacionamento para esse problema.
Eu tenho uma tabela de Alunos e uma tabela de Curso. Um aluno pode estar envolvido em muitos cursos e um aluno só pode pagar a taxa do curso que ele é invocado. Como posso criar um relacionamento para esse problema.
Respostas:
Você precisa de uma tabela intermediária que retenha os dados dos alunos para os cursos; esta tabela pode ter muitas linhas para um determinado aluno como este: Studennt1-Course1, Student1-Course2, etc ... o SQL para recuperar os cursos de um determinado aluno seria:
SELECIONE Courses.Courses_id, Courses.Description FROM Cursos INNER JOIN Alunos-Cursos ON Courses.Courses_id = Estudantes-Cursos.Courses_id INNER JOIN Alunos ON Students-Courses.Student_id = Students.Student_id WHERE Courses.Course_id = 33
A melhor coisa seria usar apenas os IDs numéricos nessa tabela intermediária e esses IDs numéricos como a chave primária nas tabelas de Alunos e Cursos, respectivamente, como uma coluna autumérica por instância. A tabela intermediária seria como: id_students_courses (autonumeric), students_id, courses_id. Os id_students_courses seriam a chave primária da tabela de relacionamentos.