Acess - Modelando Tabelas e Relacionamentos

Modelagem

01/10/2004

Eae Galera...
Bom eu fiz um projeto e ta rodando beleza...

Ele se trata de uma escola de musica...
Onde o cara digita os dados dos alunos o dia da semana que ele faz aula e o curso que ele faz...
AÌ ESTÀ O PROBLEMA!!!

O aluno podera fazer somente um curso...
Se for fazer mais de um, tem de cadastrar duas vezes...Q ERRO FEIO!!!

O cara que eu dei esse programa, me disse que nenhum aluno fazia dois curso, tudo bem, soh que entrou um aluno e quer fazer dois cursos, e ele cadastrou duas vezes o aluno...Q Problema hein...

Pensei em dividir as tabelas(já vou mostrar a estrutura)...
Mas gostaria da ajuda de vcs que sao feras e se poderiam me ajudar eu agradeceria MUITO!!!
Desenvolvo em Delphi...se alguem tiver noção desta ferramenta, seria ótimo tb...

aí vai...

tenho tres tabelas...
Aluno, Curso, Semana

Aluno:
COD_ALUNO - AutoNumeração - ChavePrimaria
NOME_ALUNO - texto
END_ALUNO - texto
CEL_ALUNO - texto
MENSA_ALUNO - numero
COD_CURSO - numero - chave estrangeira tabela Curso
COD_SEMANA - numero - chave estrangeira tabela Semana
HIS_AULA - memorando
HIS_MENSA - memorando
EMAIL_ALUNO - texto
ENTRADA_ALUNO - texto
SAIDA_ALUNO - texto
CURSANDO - texto
DATA_CAD - data/hora
PAG_MENSA - texto
SEXO_ALUNO - texto
TEL_ALUNO - texto
DATA_NASCI - texto
CONHECEU -Memorando


Curso:
COD_CURSO - autonumeração - chave primaria
NOME_CURSO -texto

Semana
COD_SEMANA - autonumeração - chave primaria
NOME_SEMANA - texto

Bom galera, eh isso ae...
Gostaria de ajudas...

Muito Obrigado...

Abraços...

fernando_tremonti@hotmail.com


Tremonti

Tremonti

Curtidas 0

Respostas

Gandalf.nho

Gandalf.nho

01/10/2004

O correto seria quebrar a tabela ALUNO, separando o curso do aluno, daí permite mais de um curso por aluno


GOSTEI 0
Tremonti

Tremonti

01/10/2004

Como assim?!
Nao entendi legal...

Abraços...


GOSTEI 0
Gandalf.nho

Gandalf.nho

01/10/2004

Pegue os campos referentes ao curso que estão na tabela ALUNO e coloque-os em outra tabela e depois vincule-as pelo código do aluno. Daí cada aluno só é cadastrado uma vez, independentemente do nº de cursos.
Dê uma pesquisada sobre NORMALIZAÇÂO se você precisar de mais dicas de como montar uma boa base de dados sem dados redundantes.


GOSTEI 0
Tremonti

Tremonti

01/10/2004

Bom, vamos ver se eu estou indo pro caminho certo...

Vou criar uma tabela com os seguintes dados:

COD_ALUNO - numero
MENSA_ALUNO - numero
COD_CURSO - numero - chave estrangeira tabela Curso
COD_SEMANA - numero - chave estrangeira tabela Semana
HIS_AULA - memorando
HIS_MENSA - memorando
EMAIL_ALUNO - texto
ENTRADA_ALUNO - texto
SAIDA_ALUNO - texto
CURSANDO - texto
PAG_MENSA - numero

e retiro esses campos da tabela aluno, neh?!
Daí, se vc manja delphi, eu faço um Master Source...neh?!

Obrigado..

É isso?!


GOSTEI 0
Gandalf.nho

Gandalf.nho

01/10/2004

Seria isso, mas o campo e-mail deve ficar na tabela ALUNO e não na nova.


GOSTEI 0
Tremonti

Tremonti

01/10/2004

Ahhh certo...

Entao vou tentar fazer e depois conversamos...

Abraooçs...


GOSTEI 0
POSTAR