create table Alunos ( num_aluno int auto_increment not null, nome_aluno varchar(40) not null, data_nascimento date not null, sexo char, morada_aluno varchar(15), primary key (num_aluno)); create table Cursos( num_curso int auto_increment not null, nome_curso varchar(12) not null, primary key (num_curso)); create table Disciplinas ( num_disciplina int auto_increment not null, nome_disciplina varchar(12) not null, ano_curricular integer, num_horas integer, primary key (num_disciplina)); create table Professores ( num_professor int auto_increment not null, nome_professor varchar(40) not null, data_nascimento date not null, sexo char, primary key (num_professor)); create table Professores_Disciplinas ( num_professor integer references Professores(num_professor), num_disciplina integer references Disciplinas(num_disciplina), ano_lectivo integer, primary key(num_professor,num_disciplina)); create table Cursos_Disciplinas ( num_curso integer references Cursos(num_curso), num_disciplina integer references Disciplinas(num_disciplina), primary key (num_curso,num_disciplina)); create table Matriculas( num_aluno integer references Alunos(num_aluno), num_disciplina integer references Disciplinas(num_disciplina), ano_lectivo integer, nota integer, primary key (num_aluno,num_disciplina,ano_lectivo));