Guia para relações de tabelas

Importante :  Este artigo foi traduzido por um sistema de tradução automática, leia o aviso de isenção de responsabilidade. Para sua referência, veja a versão em inglês deste artigo aqui.

Um dos objetivos de um bom design de banco de dados é remover a redundância de dados (dados duplicados). Para alcançar esse objetivo, divida os dados em várias tabelas baseadas em tópicos para que cada fato seja representado apenas uma vez. Depois, forneça ao Microsoft Office Access 2007 os meios para reunir as informações divididas — faça isso colocando campos em comum em tabelas que sejam relacionadas. Para realizar essa etapa corretamente, entretanto, você deve primeiro compreender as relações entre as tabelas e depois especificar essas relações no banco de dados do Office Access 2007.

Neste artigo

Introdução

Tipos de relações de tabela

Por que criar relações de tabela?

Noções básicas sobre integridade referencial

Exibir relações de tabela

Criar uma relação de tabela

Excluir uma relação de tabela

Alterar uma relação de tabela

Impor integridade referencial

Introdução

Depois de criar uma tabela para cada assunto em seu banco de dados, você deverá fornecer ao Office Access 2007 os meios pelos quais ele reunirá novamente essas informações quando for necessário. Isso é feito colocando-se campos em comum nas tabelas que são relacionadas e definindo-se relações entre as tabelas. Em seguida, você pode criar consultas, formulários e relatórios que exibam informações de várias tabelas de uma só vez. Por exemplo, o formulário mostrado aqui inclui informações retiradas de várias tabelas:

Formulário Pedidos exibindo de uma só vez informações relacionadas de cinco tabelas

1. As informações desse formulário são originárias da tabela Clientes...

2. ...da tabela Pedidos...

3. ...da tabela Produtos...

4. ...e da tabela Detalhes do Pedido.

O nome do cliente na caixa Cobrar é recuperado da tabela Clientes; os valores de Código do Pedido e Data do Pedido vêm da tabela Pedidos; o nome do Produto vem da tabela Produtos; os valores de Preço Unitário e Quantidade vêm da tabela Detalhes do Pedido. Essas tabelas são vinculadas umas as outras de várias formas para trazer as informações de todas para o formulário.

No exemplo anterior, os campos das tabelas precisam estar coordenados de forma que mostrem informações sobre o mesmo pedido. Tal coordenação é realizada usando-se relações de tabelas. Uma relação de tabela funciona pela correspondência de dados em campos chave. - geralmente um campo com o mesmo nome em ambas as tabelas. Na maioria dos casos, esses campos correspondentes são a chave primária de uma tabela, que fornece um identificador exclusivo para cada registro, e uma chave estrangeira da outra tabela. Pode-se, por exemplo, associar funcionários aos pedidos pelos quais são responsáveis criando-se uma relação de tabela entre os campos CódigoDoFuncionário nas tabelas Funcionários e Pedidos.

IDFuncionário usado como chave primária na tabela Funcionários e como chave estrangeira na tabela Pedidos.

1. CódigoDoFuncionário aparece em ambas as tabelas — como uma chave primária ...

2.   ...e como uma chave estrangeira.

Início da página

Tipos de relações da tabela

Há três tipos de relações de tabela.

  • Uma relação um-para-muitos

    Considere um banco de dados de controle de pedidos que inclua uma tabela Clientes e uma tabela Pedidos. Um cliente pode fazer qualquer número de pedidos. Assim, para qualquer cliente representado na tabela Clientes, pode haver vários pedidos representados na tabela Pedidos. A relação entre a tabela Clientes e a tabela Pedidos é, portanto, uma relação um-para-muitos.

    Para representar uma relação um-para-muitos em um design de banco de dados, tome a chave primária do lado "um" da relação e adicione-a como um campo ou campos adicionais à tabela no lado "muitos" da relação. Nesse caso, por exemplo, adicione um novo campo — o campo Código da tabela Clientes — à tabela Pedidos e nomeie-o como Código do Cliente. O Access poderá então usar o número do Código do Cliente na tabela Pedidos para localizar o cliente correto para cada pedido.

  • Uma relação muitos-para-muitos

    Considere a relação entre uma tabela Produtos e uma tabela Pedidos. Um único pedido pode incluir mais de um produto. Por outro lado, um único produto pode constar em vários pedidos. Assim, para todos os registros da tabela Pedidos, pode haver vários registros na tabela Produtos. Além disso, para cada registro na tabela Produtos, pode haver muitos registros na tabela Pedidos. Esse tipo de relação é denominado relação muitos-para-muitos porque com relação a todos os produtos pode haver vários pedidos, e para todos os pedidos pode haver vários produtos. Observe que para detectar relações muitos-para-muitos existentes entre as tabelas é importante considerar ambos os lados da relação.

    Para representar uma relação muitos-para-muitos, você deve criar uma terceira tabela, geralmente chamada de tabela de associação, que divide a relação muitos-para-muitos em duas relações um-para-muitos. Insira a chave primária de cada uma das duas tabelas na terceira tabela. Como resultado, a terceira tabela registra cada ocorrência, ou instância, da relação. Por exemplo, a tabela Pedidos e a tabela Produtos possuem uma relação muitos-para-muitos que é definida criando-se duas relações um-para-muitos com a tabela Detalhes do Pedido. Um pedido pode ter muitos produtos, e cada produto pode aparecer em muitos pedidos.

  • Uma relação um-para-um

    Em uma relação um-para-um, cada registro na primeira tabela pode ter somente um registro correspondente na segunda tabela, e cada registro na segunda tabela pode ter somente um registro correspondente na primeira tabela. Esse tipo de relação não é comum porque, geralmente, as informações relacionadas dessa maneira são armazenadas na mesma tabela. A utilização de uma relação um-para-um é recomendada para dividir uma tabela com muitos campos, isolar parte de uma tabela por motivos de segurança ou armazenar informações que se apliquem somente a um subconjunto da tabela principal. Quando você identificar esse tipo de relação, ambas as tabelas devem compartilhar um campo em comum.

Início da página

Por que criar relações de tabela?

Você pode criar relações de tabela explicitamente usando a janela Relações ou arrastando um campo do painel Lista de campo. Office Access 2007 usa relações de tabela como associar tabelas quando você precisar usá-los em um objeto de banco de dados. Há vários motivos por que você deve criar relações de tabela antes de criar outros objetos de banco de dados, como formulários, consultas, macros e relatórios.

  • As relações de tabela informam os designs de consulta

    Para trabalhar com registros de mais de uma tabela, você geralmente deve criar uma consulta que associe as tabelas. A consulta faz a correspondência dos valores no campo de chave primária da primeira tabela com um campo de chave estrangeira na segunda tabela. Por exemplo, para retornar linhas que listem todos os pedidos de cada cliente, construa uma consulta que faça a associação da tabela Clientes com a tabela Pedidos com base no campo Código do Cliente. Na janela Relações, você pode especificar manualmente os campos a serem associados. Entretanto, se você já tiver uma relação definida entre as tabelas, o Office Access 2007 fornece a associação padrão, com base na relação de tabela existente. Além disso, se você usar um dos assistentes de consulta, o Access usa as informações coletadas das relações da tabela já definidas para apresentá-lo opções informadas e para pré-definir configurações de propriedade com os valores padrão adequados.

  • As relações de tabela informam os designs de formulário e relatório

    Quando você cria um formulário ou relatório, o Office Access 2007 usa as informações coletadas das relações de tabela já definidas para apresentá-lo opções informadas e para pré-definir configurações de propriedade com os valores padrão adequados.

  • As relações de tabelas são a base através da qual você pode garantir a integridade referencial para ajudar a evitar registros órfãos no banco de dados. Um registro órfão é um registro com uma referência a outro registro que não existe — por exemplo, um registro de pedido que faça referência a um registro de cliente que não existe.

    Quando você cria um banco de dados, divide as informações em tabelas, cada uma com uma chave primária. Depois, você adiciona chaves estrangeiras a tabelas relacionadas que façam referência a essas chaves primárias. Esses pares chave estrangeira-chave primária formam a base das relações de tabelas e consultas de várias tabelas. É importante, entretanto, que essas referências chave estrangeira-chave primária permaneçam sincronizadas. A integridade referencial ajuda a garantir que as referências permaneçam sincronizadas e depende das relações de tabelas.

Início da página

Noções básicas sobre integridade referencial

Quando você cria um banco de dados, divide as informações em várias tabelas baseadas em tópicos para minimizar a redundância de dados. Forneça, então, ao Office Access 2007 os meios necessários para reunir os dados novamente colocando campos em comum em tabelas relacionadas. Por exemplo, para representar uma relação um-para-muitos, tome a chave primária da tabela "um" e adicione-a como campo adicional na tabela "muitos". Para reunir os dados novamente, o Access pega o valor na tabela "muitos" e procura o valor correspondente na tabela "um". Dessa forma, os valores na tabela "muitos" fazem referência aos valores correspondentes na tabela "um".

Suponha que você tenha uma relação um-para-muitos entre Expedidores e Pedidos e você deseje excluir um Expedidor. Se o expedidor que você deseja excluir tiver pedidos na tabela Pedidos, esses pedidos se tornarão "órfãos" quando você excluir o registro Expedidor. Os pedidos ainda conterão um código de expedidor, mas ele não será mais válido, porque o registro ao qual ele faz referência não existe mais.

O objetivo da integridade referencial é evitar órfãos e manter as referências em sincronia, para que esta situação hipotética nunca ocorra.

Impor integridade referencial habilitando-a para uma relação de tabela (consulte impor a integridade referencial para instruções passo a passo). Depois de aplicada, o Access rejeita qualquer operação que viole a integridade referencial para essa relação de tabela. Isso significa que o Access irá rejeitar ambas as atualizações que alterar o destino de uma referência e exclusões que remover o destino de uma referência. No entanto, é possível que você pode precisar perfeitamente válido para alterar a chave primária de uma transportadora com pedidos na tabela Pedidos. Nesses casos, o que você realmente precisa é para acesso atualizar automaticamente todas as linhas afetadas como parte de uma única operação. Dessa maneira, o Access garante que a atualização é concluída completo para que seu banco de dados não seja deixado em um estado inconsistente, com algumas linhas atualizadas e alguns não. Por esse motivo o Access oferece suporte a opção propagar atualização dos campos relacionados. Quando você impor a integridade referencial e escolha a opção de propagar atualização dos campos relacionados e você e atualizar uma chave primária, o Access atualiza automaticamente todos os campos que fazem referência a chave primária.

É possível também que você venha a ter a necessidade válida de excluir uma linha e todos os registros relacionados — por exemplo, um registro Expedidor e todos os pedidos relacionados a ele. Por isso, o Access oferece suporte à opção Propagar Exclusão dos Registros Relacionados. Quando você impõe a integridade referencial e escolhe a opção Propagar Exclusão dos Registros Relacionados e depois exclui um registro no lado da chave primária da relação, o Access automaticamente exclui todos os registros que fazem referência à chave primária.

Início da página

Exibir relações de tabela

Para exibir as relações de tabela, clique em Relações na guia Ferramentas de Banco de Dados. A janela Relações é aberta e exibe todas as relações existentes. Se não houver relações de tabela definidas e você estiver abrindo a janela Relações pela primeira vez, o Access solicita que você adicione uma tabela ou consulta à janela.

Abrir a janela Relações

  1. Clique no botão do Microsoft Office imagem do botão office e em Abrir.

  2. Na caixa de diálogo Abrir, selecione e abra o banco de dados.

  3. Na guia Ferramentas de Banco de dados, no grupo Mostrar/Ocultar, clique em Relações.

  4. Se o banco de dados contiver relações, a janela Relações será exibida. Se o banco de dados não contiver relações e você estiver abrindo a janela Relações pela primeira vez, a caixa de diálogo Mostrar Tabela será exibida. Clique em Fechar para fechar a caixa de diálogo.

  5. Na guia Design, no grupo Relações, clique em Todas as Relações.

    Isso exibe todas as relações definidas no banco de dados. Observe que as tabelas ocultas (tabelas para as quais a caixa de seleção Oculta na caixa de diálogo Propriedades da tabela está marcada) e suas relações não serão mostradas a menos que a caixa de seleção Mostrar Objetos Ocultos esteja marcada na caixa de diálogo Opções de Navegação.

    Para saber mais sobre a opção Mostrar Objetos Ocultos, confira o artigo Guia do Painel de Navegação.

Janela Relações

1. A chave primária

2. Esta linha representa a relação

3. A chave estrangeira

Uma relação de tabela é representada por uma linha de relação traçada entre tabelas na janela Relações. Uma relação que não garanta a integridade referencial aparece como uma linha fina entre os campos em comum que dão suporte à relação. Quando você seleciona a relação clicando na respectiva linha, a linha fica mais espessa para indicar que está selecionada. Se você impuser a integridade referencial para essa relação, a linha aparecerá mais espessa em cada extremidade. Além disso, o número 1 aparecerá sobre a parte espessa da linha em um lado da relação e o símbolo de infinito () aparecerá sobre a parte espessa da linha no outro lado.

Quando a janela Relações está ativa, você pode selecionar entre os seguintes comandos na Faixa de Opções, parte da Interface de usuário do Microsoft Office Fluent:

Na guia Design, no grupo Ferramentas:

  • Editar Relações    Abre a caixa de diálogo Editar Relações. Quando você seleciona uma linha de relação, pode clicar em Editar Relações para alterar a relação da tabela. Você também pode clicar duas vezes na linha da relação.

  • Limpar Layout    Remove todas as tabelas e relações da exibição na janela Relações. Observe que esse comando só oculta as tabelas e relações — ele não as exclui.

  • Relatório de Relações    Cria um relatório que exibe as tabelas e relações no banco de dados. O relatório mostra somente as tabelas e as relações que não estão ocultas na janela Relações.

Na guia Design, no grupo Relações:

  • Mostrar Tabela    Abre a caixa de diálogo Mostrar Tabela para que você possa selecionar tabelas e consultas para exibição na janela Relações.

  • Ocultar Tabela    Oculta a tabela selecionada na janela Relações.

  • Mostrar Relações Diretas    Exibe todas as relações e tabelas relacionadas da tabela selecionada na janela Relações, se ainda não estiverem exibidas.

  • Todas as relações    Exibe todas as relações e tabelas relacionadas em seu banco de dados na janela relações. Observe que as tabelas ocultas (tabelas para o qual o ocultos caixa de seleção na caixa de diálogo de Propriedades da tabela é selecionada) e seus relacionamentos não serão exibidos a menos que Mostrar tabelas ocultas está selecionada na caixa de diálogo Opções de navegação.

    Para obter mais informações sobre a opção de Mostrar tabelas ocultas, consulte o artigo guia para o painel de navegação.

  • Fechar    Fecha a janela Relações. Se você tiver feito alterações no layout da janela Relações, será perguntado se deseja salvá-las.

Início da página

Criar uma relação de tabela

Você pode criar uma relação de tabela usando a janela Relações ou arrastando um campo para uma folha de dados a partir do painel Lista de Campos. Quando você cria uma relação entre tabelas, os campos em comum não precisam ter os mesmos nomes, embora seja freqüente o caso de que eles tenham. Em vez disso, esses campos devem ter o mesmo tipo de dados. Se o campo da chave primária for um campo AutoNumeração, entretanto, o campo da chave estrangeira poderá ser um campo Número se a propriedade TamanhoDoCampo de ambos for a mesma. Por exemplo, você pode fazer a correspondência entre um campo AutoNumeração e um campo Número se a propriedade TamanhoDoCampo de ambos for Inteiro Longo. Quando os dois campos em comum forem campos Número, eles deverão ter a mesma configuração da propriedade TamanhoDoCampo.

Criar uma relação de tabela usando a janela Relações

  1. Clique no botão do Microsoft Office imagem do botão office e em Abrir.

  2. Na caixa de diálogo Abrir, selecione e abra o banco de dados.

  3. Na guia Ferramentas de Banco de dados, no grupo Mostrar/Ocultar, clique em Relações.

  4. Se você ainda não definiu nenhuma relação, a caixa de diálogo Mostrar Tabela aparecerá automaticamente. Se não aparecer, na guia Design, no grupo Relações, clique em Mostrar Tabela.

    A caixa de diálogo Mostrar Tabela exibe todas as tabelas e consultas no banco de dados. Para ver somente as tabelas, clique em Tabelas. Para ver somente as consultas, clique em Consultas. Para ver tabelas e consultas, clique em Ambas.

  5. Selecione uma ou mais tabelas ou consultas e, em seguida, clique em Adicionar. Quando concluir a adição de tabelas e consultas à janela Relações, clique em Fechar.

  6. Arraste um campo (normalmente a chave primária) de uma tabela para o campo comum (a chave estrangeira) na outra tabela. Para arrastar vários campos, pressione a tecla CTRL, clique em cada campo e, em seguida, arraste-os.

    A caixa de diálogo Editar Relações é exibida.

  7. Verifique se os nomes dos campos mostrados são os campos em comum da relação. Se o nome de um campo estiver incorreto, clique no nome do campo e selecione um novo campo na lista.

    Para impor integridade referencial para essa relação, marque a caixa de seleção Impor integridade referencial. Para obter mais informações sobre integridade referencial, consulte as Noções básicas sobre a integridade referencial e as seções de Impor integridade referencial .

  8. Clique em Criar.

    A linha da relação é traçada entre as duas tabelas. Se você marcou a caixa de seleção Impor Integridade Referencial, a linha aparecerá mais grossa em cada extremidade. Além disso, novamente apenas se você marcou a caixa de seleção Impor Integridade Referencial, o número 1 aparecerá sobre a parte grossa da linha em um lado da relação e o símbolo de infinito () aparecerá sobre a parte grossa da linha no outro lado.

Arrastar um campo de uma tabela para o campo correspondente em outra tabela

Observações : 

  • Para criar uma relação um-para-um    Os dois campos em comum (geralmente os campos de chave primária e chave estrangeira) devem ter um índice exclusivo. Isso significa que a propriedade Indexado desses campos deve ser definida como Sim (Duplicação Não Autorizada). Se ambos os campos tiverem um índice exclusivo, o Access criará uma relação um-para-um.

  • Para criar uma relação um-para-muitos    O campo no lado "um" (normalmente a chave primária) da relação deve ter um índice exclusivo. Isso significa que a propriedade Indexado desse campo deve ser definida como Sim (Duplicação Não Autorizada). O campo no lado "muitos" não deve ter um índice exclusivo. Ele pode ter um índice, mas deve permitir duplicação. Isso significa que a propriedade Indexado desse campo deve ser definida como Não ou Sim (Duplicação Autorizada). Quando o campo um tiver um índice exclusivo e o outro não, o Access criará uma relação um-para-muitos.

Criar uma relação de tabela usando o painel Lista de Campos

No Office Access 2007, você pode adicionar um campo a uma tabela existente que é aberta no modo folha de dados arrastando-o do painel Lista de campo. O painel Lista de campo mostra campos disponíveis nas tabelas relacionadas e também campos disponível em outras tabelas. Quando você arrasta um campo de uma tabela "outra" (não relacionada) e conclua o Assistente de pesquisa, uma nova relação um-para-muitos é criada automaticamente entre a tabela no painel Lista de campo e a tabela à qual você arrastado o campo. Essa relação, criada pelo Access, não impor integridade referencial por padrão. Para impor integridade referencial, você deve editar a relação. Consulte a seção alterar uma relação de tabela para obter mais informações.

Abrir uma tabela no modo Folha de Dados

  1. Clique no botão do Microsoft Office imagem do botão office e em Abrir.

  2. Na caixa de diálogo Abrir, selecione e abra o banco de dados.

  3. No Painel de Navegação, clique com o botão direito do mouse na tabela em deseja adicionar o campo e criar a relação e, em seguida, clique em Modo Folha de Dados no menu de atalho.

Abrir o painel Lista de Campos

  • Na guia Folha de Dados, vá até o grupo Campos e Colunas e clique em Adicionar Campos Existentes.

    imagem da faixa de opções do access

    O painel Lista de campos é exibido.

O painel Lista de Campos mostra todas as outras tabelas em seu banco de dados, agrupadas em categorias. Quando você trabalha com uma tabela no modo Folha de Dados, o Access exibe campos em uma destas duas categorias no painel Lista de Campos: Campos disponíveis nas tabelas relacionadas e Campos disponíveis em outras tabelas. A primeira categoria lista todas as tabelas que possuem uma relação com a tabela com a qual você está trabalhando. A segunda categoria lista todas as tabelas com as quais sua tabela não tem relação.

No painel Lista de Campos, ao clicar no sinal de adição (+) ao lado do nome da tabela, você vê uma lista de todos os campos disponíveis nessa tabela. Para adicionar um campo a sua tabela, arraste o campo desejado do painel Lista de Campos para a tabela no modo Folha de Dados.

Adicionar um campo e criar uma relação no painel Lista de Campos

  1. Na guia Folha de Dados, vá até o grupo Campos e Colunas e clique em Adicionar Campos Existentes.

    imagem da faixa de opções do access

    O painel Lista de campos é exibido.

  2. Em Campos disponíveis em outras tabelas, clique no sinal de adição (+) ao lado do nome de uma tabela para exibir a lista de campos dessa tabela.

  3. Arraste o campo desejado do painel Lista de Campos para a tabela aberta no modo Folha de Dados.

  4. Quando a linha de inserção for exibida, solte o campo na posição.

    O Assistente de Pesquisa será iniciado.

  5. Siga as instruções para concluir o Assistente de Pesquisa.

    O campo aparecerá na tabela do modo Folha de Dados.

Quando você arrasta um campo de uma tabela "outra" (não relacionada) e conclua o Assistente de pesquisa, uma nova relação um-para-muitos é criada automaticamente entre a tabela na Lista de campos e a tabela à qual você arrastado o campo. Essa relação, criada pelo Access, não impor integridade referencial por padrão. Para impor integridade referencial, você deve editar a relação. Consulte a seção alterar uma relação de tabela para obter mais informações.

Início da página

Excluir uma relação de tabela

Para remover uma relação de tabela, você deve excluir a linha da relação na janela Relações. Posicione cuidadosamente o cursor de forma que ele aponte para a linha da relação e, em seguida, clique na linha. A linha da relação aparecerá mais grossa quando for selecionada. Com a linha da relação selecionada, pressione DELETE. Observe que quando você remove uma relação, também remove o suporte à integridade referencial para essa relação, se ela estiver habilitada. Como resultado, o Access não mais impedirá automaticamente a criação de registros órfãos no lado "muitos" de uma relação.

  1. Clique no botão do Microsoft Office imagem do botão office e em Abrir.

  2. Na caixa de diálogo Abrir, selecione e abra o banco de dados.

  3. Na guia Ferramentas de Banco de dados, no grupo Mostrar/Ocultar, clique em Relações.

A janela Relações aparecerá.

Se você ainda não definiu nenhuma relação e essa for a primeira vez que você está abrindo a janela Relações, a caixa de diálogo Mostrar Tabela aparecerá. Se a caixa de diálogo aparecer, clique em Fechar.

  1. Na guia Design, no grupo Relações, clique em Todas as Relações.

Todas as tabelas que possuem relações são exibidas, mostrando as linhas de relação.

  1. Clique na linha do relacionamento que você deseja excluir. A linha da relação aparecerá mais grossa quando for selecionada.

  2. Pressione a tecla DELETE.

    –ou–

    Clique com o botão direito do mouse e, em seguida, clique em Excluir.

  3. O Access pode exibir a mensagem Você tem certeza de que deseja excluir permanentemente de seu banco de dados a relação selecionada?. Se essa mensagem de confirmação aparecer, clique em Sim.

Observação : Se uma das tabelas empregadas na relação de tabela estiver em uso, talvez por outra pessoa ou processo, ou em um objeto de banco de dados aberto (como um formulário), você não poderá excluir a relação. Você deverá primeiro fechar quaisquer objetos abertos que usem essas tabelas antes que possa remover a relação.

Início da página

Alterar uma relação de tabela

Você pode alterar uma relação de tabela selecionando-a na janela Relações e, em seguida, editando-a. Posicione cuidadosamente o cursor de forma que ele aponte para a linha da relação e, em seguida, clique na linha para selecioná-la. A linha da relação aparecerá mais grossa quando for selecionada. Com a linha da relação selecionada, clique nela duas vezes ou clique em Editar Relações no grupo Ferramentas na guia Design. A caixa de diálogo Editar Relações é exibida.

Faça suas alterações na caixa de diálogo Editar relações

  1. Clique no botão do Microsoft Office imagem do botão office e em Abrir.

  2. Na caixa de diálogo Abrir, selecione e abra o banco de dados.

  3. Na guia Ferramentas de Banco de dados, no grupo Mostrar/Ocultar, clique em Relações.

A janela Relações aparecerá.

Se você ainda não definiu nenhuma relação e essa for a primeira vez que você está abrindo a janela Relações, a caixa de diálogo Mostrar Tabela aparecerá. Se a caixa de diálogo aparecer, clique em Fechar.

  1. Na guia Design, no grupo Relações, clique em Todas as Relações.

Todas as tabelas com relações serão exibidas, mostrando as linhas de relações. Observe que as tabelas ocultas (tabelas cuja caixa de seleção Oculta está marcada na caixa de diálogo Propriedades da tabela) e suas relações não serão mostradas a menos que a opção Mostrar Objetos Ocultos esteja selecionada na caixa de diálogo Opções de Navegação.

Para saber mais sobre a opção Mostrar Objetos Ocultos, confira o artigo Guia do Painel de Navegação.

  1. Clique na linha da relação que você deseja alterar. A linha da relação aparecerá mais grossa quando for selecionada.

  2. Clique duas vezes na linha da relação.

    –ou–

    Na guia Design, no grupo Ferramentas, clique em Editar Relações.

    A caixa de diálogo Editar Relações é exibida.

    caixa de diálogo editar relações

  3. Faça suas alterações e clique em OK.

    Caixa de diálogo Editar relações permite alterar uma relação de tabela. Especificamente, você pode alterar as tabelas ou consultas em ambos os lados da relação ou os campos em ambos os lados. Você também pode definir o tipo de junção, ou impor a integridade referencial e escolha uma opção em cascata. Para obter mais informações sobre o tipo de junção e como configurá-lo, consulte a seção definir o tipo de junção. Para obter mais informações sobre como impor a integridade referencial e escolha uma opção em cascata, consulte a seção impor a integridade referencial.

Definir o tipo de junção

Quando você define uma relação de tabela, os fatos sobre a relação informam seus designs de consulta. Por exemplo, se você definir uma relação entre duas tabelas e, em seguida, criar uma consulta que empregue essas tabelas, o Access selecionará automaticamente os campos correspondentes padrão com base nos campos especificados na relação. Você pode substituir esses valores padrão iniciais na consulta, mas os valores fornecidos pela relação freqüentemente provarão ser os corretos. Como a correspondência e a associação de dados de mais de uma tabela é algo que você fará com freqüência em todos os bancos de dados, exceto nos mais simples, a configuração de padrões pela criação de relações pode economizar tempo e ser benéfica.

Uma consulta de várias tabelas combina informações de mais de uma tabela, pela correspondência dos valores em campos comuns. A operação que faz a correspondência e a combinação é chamada de associação. Por exemplo, suponha que você deseja exibir pedidos de clientes. Para isso, cria uma consulta que associe a tabela Clientes e a tabela Pedidos pelo campo Identificação do Cliente. O resultado da consulta contém informações sobre o cliente e informações sobre o pedido somente para as linhas em que uma correspondência for encontrada.

Um dos valores que você pode especificar para cada relação é o tipo da associação. O tipo da associação informa ao Access quais registros devem ser incluídos no resultado de uma consulta. Por exemplo, considere novamente uma consulta que associe a tabela Clientes e a tabela Pedidos pelos campos em comum que representam o Código do Cliente. Usando o tipo de associação padrão (chamada de associação interna), a consulta retornará somente as linhas de Cliente e as linhas de Pedido em que os campos em comum (também chamados de campos associados) sejam iguais.

Entretanto, suponha que você deseja incluir todos os Clientes — mesmo aqueles que ainda não fizeram nenhum pedido. Para isso, você deve alterar o tipo da associação de interna para o que é chamado de associação externa esquerda. Uma associação externa esquerda retorna todas as linhas da tabela do lado esquerdo da relação e somente as linhas correspondentes da tabela à direita. Uma associação externa direita retorna todas as linhas à direita e somente as linhas correspondentes à esquerda.

Observação : Nesse caso, "esquerda" e "direita" refere-se à posição das tabelas na caixa de diálogo Editar Relações, não na janela Relações.

Você deve pensar sobre o resultado que desejará com mais frequência de uma consulta que una as tabelas dessa relação e então definir o tipo de junção adequado.

Definir o tipo de junção

  1. Na caixa de diálogo Editar Relações, clique em Tipo de Junção.

    A caixa de diálogo Propriedades da Junção aparece.

  2. Clique em sua escolha e, em seguida, clique em OK.

A tabela a seguir (usando as tabelas Clientes e Pedidos) mostra as três opções que são exibidas na caixa de diálogo Propriedades da Associação, o tipo da associação utilizada e se todas as linhas ou as linhas correspondentes são incluídas para cada tabela.

Opção

Associação relacional

Tabela da esquerda

Tabela da direita

1. Somente incluir as linhas quando os campos associados de ambas as tabelas forem iguais.

Junção interna

Linhas correspondentes

Linhas correspondentes

2. Incluir TODOS os registros de 'Clientes' e somente os registros de 'Pedidos' quando os campos associados forem iguais.

Junção externa esquerda

Todas as linhas

Linhas correspondentes

3. Incluir TODOS os registros de 'Pedidos' e somente os registros de 'Clientes' quando os campos associados forem iguais.

Junção externa direita

Linhas correspondentes

Todas as linhas

Quando você escolher a opção 2 ou a opção 3, uma seta será mostrada na linha da relação. Essa seta apontará para o lado da relação que mostra somente as linhas correspondentes.

Fazer alterações na caixa de diálogo Propriedades da Junção

  1. Clique no botão do Microsoft Office imagem do botão office e em Abrir.

  2. Na caixa de diálogo Abrir, selecione e abra o banco de dados.

  3. Na guia Ferramentas de Banco de dados, no grupo Mostrar/Ocultar, clique em Relações.

A janela Relações aparecerá.

Se você ainda não definiu nenhuma relação e essa for a primeira vez que você está abrindo a janela Relações, a caixa de diálogo Mostrar Tabela aparecerá. Se a caixa de diálogo aparecer, clique em Fechar.

  1. Na guia Design, no grupo Relações, clique em Todas as Relações.

Todas as tabelas que têm relações serão exibidas, mostrando linhas de relações. Observe que as tabelas ocultas (tabelas para as quais a caixa de seleção Oculta na caixa de diálogo Propriedades da tabela esteja marcada) e suas relações não serão mostradas a menos que Mostrar Objetos Ocultos esteja selecionada na caixa de diálogo Opções de Navegação.

Para saber mais sobre a opção Mostrar Objetos Ocultos, confira o artigo Guia do Painel de Navegação.

  1. Clique na linha da relação que você deseja alterar. A linha da relação aparecerá mais grossa quando for selecionada.

  2. Clique duas vezes na linha da relação.

    –ou–

    Na guia Design, no grupo Ferramentas, clique em Editar Relações.

    A caixa de diálogo Editar Relações é exibida.

  3. Clique em Tipo de Junção

  4. Na caixa de diálogo Propriedades da Junção, clique em uma opção e, em seguida, clique em OK.

    Caixa de diálogo Propriedades da Junção

  5. Faça alterações adicionais na relação e clique em OK.

Início da página

Impor a integridade referencial

A finalidade do uso de integridade referencial é evitar registros órfãos e manter referências sincronizadas para que você não tiver todos os registros que fazem referência a outros registros que não existem mais. Impor integridade referencial habilitando-a para uma relação de tabela. Depois de aplicada, o Access rejeita qualquer operação que viole a integridade referencial para essa relação de tabela. Acesso rejeita as atualizações que alterar o destino de uma referência e também exclusões que remover o destino de uma referência. Para ter acesso Propagar exclusões e atualizações referencial para que todas as linhas relacionadas são alteradas de acordo, consulte a seção definir as opções em cascata.

Ativar ou desativar a integridade referencial

  1. Clique no botão do Microsoft Office imagem do botão office e em Abrir.

  2. Na caixa de diálogo Abrir, selecione e abra o banco de dados.

  3. Na guia Ferramentas de Banco de dados, no grupo Mostrar/Ocultar, clique em Relações.

A janela Relações aparecerá.

Se você ainda não definiu nenhuma relação e essa for a primeira vez que você está abrindo a janela Relações, a caixa de diálogo Mostrar Tabela aparecerá. Se a caixa de diálogo aparecer, clique em Fechar.

  1. Na guia Design, no grupo Relações, clique em Todas as Relações.

Todas as tabelas com relações serão exibidas, mostrando as linhas de relações. Observe que as tabelas ocultas (tabelas cuja caixa de seleção Oculta está marcada na caixa de diálogo Propriedades da tabela) e suas relações não serão mostradas a menos que a opção Mostrar Objetos Ocultos esteja selecionada na caixa de diálogo Opções de Navegação.

Para saber mais sobre a opção Mostrar Objetos Ocultos, confira o artigo Guia do Painel de Navegação.

  1. Clique na linha da relação que você deseja alterar. A linha da relação aparecerá mais grossa quando for selecionada.

  2. Clique duas vezes na linha da relação.

    –ou–

    Na guia Design, no grupo Ferramentas, clique em Editar Relações.

    A caixa de diálogo Editar Relações é exibida.

  3. Marque a caixa de seleção Impor Integridade Referencial.

  4. Faça quaisquer alterações adicionais na relação e clique em OK.

Depois de impor a integridade referencial, as seguintes regras serão aplicadas:

  • Não será possível inserir um valor no campo de chave estrangeira de uma tabela relacionada se esse valor não existir no campo de chave primária da tabela primária: fazer isso cria registros órfãos.

  • Você não pode excluir um registro de uma tabela primária se existirem registros coincidentes em uma tabela relacionada. Por exemplo, você não pode excluir o registro de um funcionário da tabela Funcionários se houver pedidos atribuídos a esse funcionário na tabela Pedidos. Entretanto, você pode optar por excluir um registro primário e todos os registros relacionados em uma operação, marcando a caixa de seleção Propagar Exclusão dos Registros Relacionados.

  • Você não poderá alterar o valor de uma chave primária na tabela primária se isso for criar registros órfãos. Por exemplo, você não pode alterar um número de pedido na tabela Pedidos se houver itens de linha atribuídos a esse Pedido na tabela Detalhes do Pedido. Entretanto, você pode optar por atualizar um registro primário e todos os registros relacionados em uma operação, marcando a caixa de seleção Propagar Atualização dos Campos Relacionados.

    Observações : Se você tiver dificuldade em habilitar a integridade referencial, observe que as seguintes condições são requeridas para impor a integridade referencial:

    • O campo comum da tabela primária deverá ser uma chave primária ou ter um índice exclusivo.

    • Os campos comuns devem ter o mesmo tipo de dados. A única exceção é que um campo AutoNumeração pode ser relacionado a um campo Número que tenha a configuração da propriedade FieldSize igual a Inteiro Longo.

    • As duas tabelas devem existir no mesmo banco de dados do Access. A integridade referencial não pode ser imposta em tabelas vinculadas. No entanto, se as tabelas de origem estiverem no formato do Access, você poderá abrir o banco de dados no qual elas estão armazenadas e habilitar a integridade referencial nesse banco de dados.

Definir as opções em cascata

Você pode se deparar com uma situação em que tenha uma necessidade válida de alterar o valor no lado "um" de uma relação. Nesse caso, você precisará que o Access atualize automaticamente todas as linhas afetadas como parte de uma única operação. Dessa forma, a atualização será concluída totalmente de forma que o banco de dados não seja deixado em um estado inconsistente — com algumas linhas atualizadas e outras não. O Access ajuda a evitar esse problema oferecendo suporte à opção Propagar Atualização dos Campos Relacionados. Quando você impõe a integridade referencial e escolhe a opção Propagar Atualização dos Campos Relacionados e, em seguida, atualiza uma chave primária, o Access atualiza automaticamente todos os campos que fazem referência à chave primária.

Você também pode precisar excluir uma linha e todos os registros relacionados — por exemplo, o registro de um Expedidor e todos os pedidos relacionados a ele. Por esse motivo, o Access oferece suporte à opção Propagar Exclusão dos Registros Relacionados. Quando você impõe a integridade referencial e escolhe a opção Propagar Exclusão dos Registros Relacionados, o Access exclui automaticamente todos os registros que fazem referência à chave primária quando você exclui o registro que contém a chave primária.

Ativar ou desativar a atualização e/ou a exclusão em cascata

  1. Clique no botão do Microsoft Office imagem do botão office e em Abrir.

  2. Na caixa de diálogo Abrir, selecione e abra o banco de dados.

  3. Na guia Ferramentas de Banco de dados, no grupo Mostrar/Ocultar, clique em Relações.

A janela Relações aparecerá.

Se você ainda não definiu nenhuma relação e essa for a primeira vez que você está abrindo a janela Relações, a caixa de diálogo Mostrar Tabela aparecerá. Se a caixa de diálogo aparecer, clique em Fechar.

  1. Na guia Design, no grupo Relações, clique em Todas as Relações.

Todas as tabelas com relações serão exibidas, mostrando as linhas de relações. Observe que as tabelas ocultas (tabelas cuja caixa de seleção Oculta está marcada na caixa de diálogo Propriedades da tabela) e suas relações não serão mostradas a menos que a opção Mostrar Objetos Ocultos esteja selecionada na caixa de diálogo Opções de Navegação.

Para obter mais informações sobre a opção Mostrar objetos ocultos, consulte o guia para o painel de navegação.

  1. Clique na linha da relação que você deseja alterar. A linha da relação aparecerá mais grossa quando for selecionada.

  2. Clique duas vezes na linha da relação.

    –ou–

    Na guia Design, no grupo Ferramentas, clique em Editar Relações.

    A caixa de diálogo Editar Relações é exibida.

  3. Marque a caixa de seleção Impor Integridade Referencial.

  4. Marque a caixa de seleção Propagar Atualização dos Campos Relacionados ou Propagar Exclusão dos Registros Relacionados ou ambas.

  5. Faça quaisquer alterações adicionais na relação e clique em OK.

Observação : Se a chave primária for um campo Numeração Automática, o uso da caixa de seleção Propagar Atualização dos Campos Relacionados não terá efeito, pois não é possível mudar o valor de um campo Numeração Automática.

Início da página

Observação : Aviso de Isenção de Tradução Automática: Este artigo foi traduzido por computador, sem intervenção humana. A Microsoft oferece essas traduções automáticas para ajudar as pessoas que não falam inglês a aproveitar os textos escritos sobre produtos, serviços e tecnologias da Microsoft. Como este artigo foi traduzido automaticamente, é possível que contenha erros de vocabulário, sintaxe ou gramática.

Expanda suas habilidades
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.

×