Problemas com chave estrangeira

Olá amigos do GUJ,esse é o meu primeiro post e gostaria muito de contar com a ajuda de vcs.

É o seguinte,sou iniciante em jsp e estou com muitas dúvidas em como fazer o cadastro,alteração,listagem e exclusão sendo que meu modelo de dados está dessa forma por determinação do professor:

A questão é como ficaria por exemplo o cadastro de Alunos,sendo que dentro de Aluno tem idCurso e idProfessor?
Desde já agradeço aos que me derem uma força.Valeu!!!

Se eu entendi direito sua dúvida, na janela do JSP é normal o que fica diferente é na tabela para o banco de dados. Devido que a tabela só pode ter uma chave primaria as demais são estrangeiras.

CREATE TABLE ‘NOME DA TABELA’ (
IDALUNO INTEGER NOT NULL,
IDPROFESSOR INTEGER NOT NULL

);

ALTER TABLE “NOME DA TABELA”
ADD ( PRIMARY KEY (IDALUNO) ) ;

ALTER TABLE "NOME DA TABELA "
ADD ( FOREIGN KEY (IDPROFESSOR)
REFERENCES “NOME DA TABELA 2” ) ;

Mas como fica meu formulário de cadastro de aluno?Como vou cadastrar por exemplo o professor e o curso na tela de cadastro de aluno?

Nomal olha um exemplo:

int idaluno=Integer.parseInt(request.getParameter(“idaluno”));
int idprofessor=Integer.parseInt(request.getParameter(“idprofessor”));


E assim por diante!

Muito obrigado pela força marianaarosa,porém ainda não consigo entender o que eu vou cadastrar na tela do aluno.Por exemplo:
Matricula:___________
Turma:_____________
e o professor e o curso como vai ser?Eu cadastro eles nessa mesma tela ou cadastro nas suas respectivas telas?E se for nessa mesma tela,que campos eu vou cadastrar?Entendeu o que eu quis dizer?Valeu!!!

Pelo que eu entendi vc não está com dúvida de programação mais sim do que colocar em cada janela, na minha opnião tem que ser separado cadastro de professor e aluno e etc, juntar as chaves primarias de cada um se necessário, ai quando vc for juntar em uma mesma tabela chaves primarias de outras tabelas vc tem que declara-las como chave estrangeiras, não sei se expliquei bem…!

Explicou sim,valeu mesmo.Só mais uma coisa,por exemplo,eu vou cadastrar o professor e o curso que são chaves estrangeiras da tabela aluno em suas respectivas telas certo?Então na tela de cadastro de alunos esses campos eu vou buscar atravez de um por exemplo?Grande abraço!!!

isso. Só que tem que fazer a conexão com o banco de dados com vc está utilizando?
Eu tenho feito dos meu projetos o do oracle se vc quiser eu ti passo um código exemplo.
T+

Eu estou usando mysql,seria ótimo um código exemplo,porque ainda não me acostumei com esse lance de oo.Valeu mesmo!!!

Caro sr., está havendo uma enorme confusão…
Como são as regras de negócio do software do sr.?

Veja que, na minha forma de pensar, um curso pode ter mais de um professor, e vice-versa, gerando um relacionamento n:m e cnsequentemente uma tabela nova, com os dois IDS e chave primária composta.

Confere?

Se for isso, o formulário será diferente. Terá que ser um pra cadastro de professor, um pra cadastro de disciplinas. Com os dois cadastros, se popula a tabela Professor_Has_Disciplina ou vice-versa, o nome não importa.

Depois disso tudo, deverá ser cadastrado o aluno.

Não consegui ver a foto do seu esquema.

Abraços

No caso o professor não tem relacionamento com o curso,os dois é que tem com aluno.Eu gostaria de saber como ficaria o meu código para cadastrar o aluno sendo que o curso e o professor vão ser escolhidos atravez de um .Minha classe Aluno tem idAluno,idCurso,idProfessor,matricula e turma ok?Vc tem algum exemplo de como poderei fazer isso?Valeu!!!

O aluno só pode ter um curso e um professor, é isso? Se o aluno pode ter mais de um curso ou professor cadastrado, o BD não está normalizado.

Tem como eu te mandar o meu modelo de dados?O Professor é que disse que tinha que ser assim.Como posso te enviar?Valeu!!!

Amigo, me adiciona no msn, é o meu nick daqui no hotmail. Abraço!