Relações entre tabelas

Nota: Queremos fornecer-lhe os conteúdos de ajuda mais recentes o mais rapidamente possível e no seu idioma. Esta página foi traduzida automaticamente e pode conter erros gramaticais ou imprecisões. O nosso objetivo é que estes conteúdos lhe sejam úteis. Pode informar-nos se as informações foram úteis no final desta página? Eis o artigo em inglês para referência.

Por Allen Castanheira, aceder MVP

Principiantes de base de dados, por vezes, ter dificuldade com que as tabelas são necessárias e como se relacionam com uma tabela para outra. É provavelmente mais fácil seguir com um exemplo.

Como professor escola, Margaret tem de registar o nome de cada aluno e detalhes de casa, juntamente com os assuntos reencaminhado e as notas atingidas. Para fazer tudo isto numa única tabela, posteriormente, poderia experimente efetuar campos:

Nome

Endereço

Telefone da Residência

Assunto

Nota

No entanto, esta estrutura é necessário lhe introduzir o nome e endereço de student novamente para cada novo assunto! Para além do tempo necessário para entrada, pode imaginar que o que acontece quando um estudante altera o endereço e Margaret tem que localizar e atualizar as entradas anteriores? Posteriormente, tentará uma estrutura diferente com apenas um registo para cada aluno. Isto requer que muitos campos adicionais - algo como:

Nome

Endereço

Telefone da Residência

Nome do assunto 1

Grau para assunto 1

Nome do assunto 2

Grau para assunto 2

Nome do assunto 3

Mas assuntos quantos tem ela de permitir? Quanto espaço irá resíduos? Como é que ela sabe qual a coluna para procurar em para localizar "Histórico 104"? Como ela média classificações por letras que possam estar em qualquer coluna antiga? Sempre que vir este repetição de campos, os dados tem de ser divididos em tabelas separadas.

A solução para o problema envolve tomar três tabelas: uma para estudantes, uma para assuntose outra para as notas do aluno. A tabela de estudantes tem de ter um código único para cada aluno, para que o computador não obter confuso acerca de dois estudantes com os mesmos nomes. Margaret chamadas este campo StudentID, para que a tabela de estudantes contém campos:

StudentID um código único para cada aluno.

Dividir Apelido nome próprio e apelido para tornar as pesquisas mais fácil.

NomePróprio

Endereço dividir informações do endereço para a mesma razão.

Subúrbio

Código Postal

Telefone

A tabela assuntos terá de campos:

SubjectID um código único para cada assunto.

Assunto o título completo do assunto

Notas breve descrição do que abrange este assunto.

A tabela de classificações por letras , em seguida, terá de apenas três campos:

StudentID une esta entrada para um aluno na tabela estudantes

SubjectID une esta entrada um assunto na tabela assuntos

Grau a marca deste estudantes obtida neste assunto.

Depois de criar as três tabelas, Margaret tem de criar uma ligação entre elas. No Access 95-2003, posteriormente, deverá selecionar a janela do contentor de base de dados e escolher a opção relações no menu Ferramentas (menu Editar no Access 1 -2.) No Access 2007, relações é no grupo Mostrar/Ocultar o friso Ferramentas da base de dados . "As notas do aluno" será "tabela relacionada" em relações com ambas as outras tabelas.

Agora, posteriormente, introduz todos os alunos na tabela estudantes , com a StudentID exclusivo para cada um. Seguinte que ela introduz todos os assuntos que ela ensina para a tabela assuntos , cada uma com um SubjectID. Em seguida, no final do termo quando existem prontas as marcas, posteriormente, pode introduzi-los na tabela classificações por letras utilizando o adequado StudentID a partir da tabela de estudantes e SubjectID a partir da tabela até que sejam assuntos .

Para ajudar a introduzir marcas, posteriormente, cria um formulário, utilizando o Assistente de "Formulários/subformulários": "assuntos" é a origem para o formulário principal e "notas" é a origem para o subformulário. Agora com o assunto adequado no formulário principal e adiciona cada StudentID e grau no subformulário.

As notas foram introduzidas por assunto, mas Margaret precisa para visualizá-los por estudantes. Posteriormente, cria outra formulários/subformulários, com o formulário principal ao ler os respetivos dados da tabela alunos e o subformulário a partir da tabela de classificações por letras . Visto que ela utilizado StudentID ao introduzir as notas do aluno no seu formulário anterior, o Access liga este código para um no novo formulário principal e apresenta todos os assuntos e as notas do aluno automaticamente para o aluno no formulário principal.

Logótipo MVP

Allen Castanheira é mais avaliadas Professional (MVP) para o Access. Castanheira SR. é o proprietário da base de dados e formação do Allen Castanheirae ele encontra-se em Perth, Austrália.

Aumente os seus conhecimentos do Office
Explore as formações
Seja o primeiro a obter novas funcionalidades
Adira ao Office Insider

As informações foram úteis?

Obrigado pelos seus comentários!

Obrigado pelo seu feedback! Parece que poderá ser benéfico reencaminhá-lo para um dos nossos agentes de suporte do Office.

×