SQLite
 sql >> Base de Dados >  >> RDS >> SQLite

Escolha de banco de dados para criar duas tabelas conectadas?


Este é um caso clássico de muitos para muitos e, para isso, você precisará de uma terceira tabela entre Curso e Aluno. O esquema ficará mais ou menos assim:

Course tabela tem colunas ("course_id", "course_name")

Student_course tabela tem colunas ("student_id", "course_id");

Student tabela como colunas ("student_id", "student_name")

A tabela Student_course tem restrições de chave estrangeira nas tabelas de alunos e cursos.

Dados de exemplo:

Curso:
id   |  name
------------------
1    |  Maths
2    |  English
3    |  Science

Aluna
id   |  name
---------------
1    |  Tom
2    |  Dick
3    |  Harry

Aluno_curso
student_id | course_id
------------------------
1          | 1
1          | 2
2          | 1
3          | 3

Neste exemplo, o Aluno 1 (Tom) está nos cursos 1 e 2 (Matemática, Inglês),

Aluno 2 (Dick) está apenas no curso 1 (Matemática)

Aluno 3 (Harry) está apenas no curso 3 (Ciências)