A dúvida que tenho é sobre a construção de um relacionamento n-n, mas me deparo se a tabela do meio, que faz a ligação (No caso abaixo Tabela Matrícula) poderia ter somente FK ou se a PK seria diferentes das FK ou se a PK pode ser a mesma da FK;
CREATE TABLE Aluno ( Nr_Rgm NUMBER(8) NOT NULL, Nm_Nome VARCHAR2(40) NOT NULL, Nm_Pai VARCHAR2(40), Nm_Mae VARCHAR2(40), Dt_Nascimento DATE NOT NULL, Id_Sexo CHAR(1), CONSTRAINT Aluno_Nr_Rgm_pk PRIMARY KEY (Nr_Rgm) );
CREATE TABLE Classe ( Cd_Classe NUMBER(8) NOT NULL, Nr_AnoLetivo NUMBER(4), Nr_Serie NUMBER(2), Sg_Turma VARCHAR2(2), Cd_Escola NUMBER(6), Cd_Grau NUMBER(2), Cd_Periodo NUMBER(2), CONSTRAINT Cliente_Cd_Classe_pk PRIMARY KEY (Cd_Classe) );
*CREATE TABLE Matricula ( * Nr_Rgm NUMBER(8) NOT NULL, Cd_Classe NUMBER(8) NOT NULL, Dt_Matricula DATE, ** CONSTRAINT Matricula_pk PRIMARY KEY (Nr_Rgm, Cd_Classe), ** CONSTRAINT Matricula_Nr_Rgm_fk FOREIGN KEY (Nr_Rgm) references Aluno(Nr_Rgm), CONSTRAINT Matricula_Cd_Classe_fk FOREIGN KEY (Cd_Classe) references Classe(Cd_Classe) );
Valeu!