Relações entre tabelas

Observação: Desejamos fornecer o conteúdo da Ajuda mais recente no seu idioma da forma mais rápida possível. Esta página foi traduzida de forma automatizada e pode conter imprecisões ou erros gramaticais. Nosso objetivo é que este conteúdo seja útil para você. As informações foram úteis? Dê sua opinião no final desta página. Aqui está o artigo em inglês para facilitar a referência.

Por Allen Browne, acessar MVP

Iniciantes do banco de dados às vezes enfrentam quais tabelas são necessárias e como relacionar uma tabela para outra. Ela provavelmente é mais fácil acompanhar com um exemplo.

Como professor, Maria precisa controlar o nome de cada aluno e detalhes residencial, juntamente com os assuntos que eles adotaram e as notas alcançadas. Para fazer isso em uma única tabela, ela pode tentar fazer campos:

Nome

Endereço

Telefone residencial

Assunto

Nota

Mas essa estrutura requer que ela inserir o nome e endereço do aluno novamente para cada assunto novo! Além do tempo necessário para entrada, você pode imaginar o que acontece quando um aluno altera o endereço e Maria tem que localizar e atualizar todas as entradas anteriores? Ela tenta uma estrutura diferente com apenas um registro para cada aluno. Isso requer muitos campos adicionais - algo como:

Nome

Endereço

Telefone residencial

Nome do assunto 1

Notas para assunto 1

Nome do assunto 2

Notas para assunto 2

Nome do assunto 3

Mas quantos assuntos deve ela permitir? Quanto espaço será esse desperdício? Como ela sabem qual coluna examinar para encontrar "Histórico 104"? Como ela média notas que podem estar em qualquer coluna antigo? Sempre que você vir essa repetição de campos, os dados precisam ser divididas em tabelas separadas.

A solução para seu problema envolve três tabelas: uma para os alunos, um para assuntose uma para notas. A tabela de alunos deve ter um código exclusivo para cada aluno, para que o computador não obter confuso sobre dois alunos com os mesmos nomes. Maria chama este campo StudentID, para que a tabela de alunos contém campos:

StudentID um código exclusivo para cada aluno.

Sobrenome dividir sobrenome e nome para facilitar a pesquisa.

Nome

Endereço dividir informações de endereço para o mesmo motivo.

Suburb

CEP

Telefone

A tabela de assuntos terá campos:

SubjectID um código exclusivo para cada assunto.

Título completo do assunto do assunto

Anotações breve descrição do que aborda esse assunto.

A tabela de notas , em seguida, será necessário apenas três campos:

StudentID vincula essa entrada para um aluno na tabela alunos

SubjectID vincula essa entrada a um assunto na tabela assuntos

Notas a marca esta aluno obtida no assunto.

Depois de criar as três tabelas, Maria precisa criar um vínculo entre elas. No Access 95-2003, ela selecionaria a janela de contêiner de banco de dados e escolhendo relações no menu Ferramentas (menu Editar no Access 1 -2.) No Access 2007, relações está no grupo Mostrar/ocultar da faixa de opções Ferramentas de banco de dados . "Notas" será "tabela relacionada" em relações com ambas as outras tabelas.

Agora, ela insere todos os alunos na tabela alunos , com o StudentID exclusivo para cada um. Em seguida ela insere todos os assuntos que ela ensina a tabela de assuntos , cada uma com um SubjectID. Então, no final do período de vigência quando as marcas estiverem prontas, ela pode inseri-las na tabela notas usando o apropriado StudentID da tabela alunos e SubjectID da tabela de assuntos .

Para ajudar a inserir marcas, ela cria um formulário, usando o Assistente de "Formulário/subformulário": "entidades" é a fonte para o formulário principal e "notas" é a fonte para o subformulário. Agora com o assunto apropriado no formulário principal e adiciona cada StudentID e notas no subformulário.

As notas foram inseridas por assunto, mas Maria precisa exibi-los por aluno. Ela cria outro formulário/subformulário, com o formulário principal ler seus dados da tabela alunos e o subformulário da tabela de notas . Como ela usado StudentID ao inserir notas no seu formulário anterior, Access links este código para aquele no novo formulário principal e exibe automaticamente todos os assuntos e notas do aluno no formulário principal.

Logotipo MVP

Allen Browne é mais valiosos Professional (MVP) para acesso. SR. Browne é o proprietário do banco de dados e treinamento de Allen Brownee ele reside na Perth, Austrália.

Expanda suas habilidades no Office
Explore o treinamento
Obtenha novos recursos primeiro
Ingressar no Office Insider

Essas informações foram úteis?

Obrigado por seus comentários!

Agradecemos pelos seus comentários! Parece que pode ser útil conectar você a um de nossos agentes de suporte do Office.

×