Planejamento de um banco de dados relacional
Antes de criar um banco de dados relacional usando o gráfico de relacionamentos, projete o seu banco de dados no papel ou na tela. Em termos de bancos de dados, o plano que você desenvolve é chamado de diagrama entidade-relacionamento.
Para saber as etapas gerais de projeto de um app personalizado do FileMaker Pro, consulte Criação de um app personalizado.
Para planejar um banco de dados relacional:
- Determine as categorias de informações que serão necessárias para o seu banco de dados relacional. Essas categorias serão tabelas no FileMaker Pro.
Por exemplo, um banco de dados Vendas poderia incluir as seguintes tabelas: Clientes, que inclui informações do cliente; Faturas, que inclui informações de pedidos; e Produtos, que inclui informações de produtos.
- Determine como as tabelas se relacionam entre si. Você pode fazer Isso escrevendo frases simples que descrevam como as categorias interagem entre si, como "clientes fazem pedidos de produtos" e "faturas registram os pedidos dos clientes".
- Conecte uma tabela a outra para indicar um relacionamento entre elas. Por exemplo, os clientes podem ter faturas e as faturas podem ter produtos.
Se uma tabela não tiver relacionamento com outra, provavelmente, ela não é necessária. Nesse exemplo, uma tabela Funcionários não se encaixa nesse banco de dados relacional.
- Indique o tipo de relacionamento entre as tabelas conectando-as com um símbolo representativo.
- Em um relacionamento um para um, um registro na Tabela A corresponde a um registro na Tabela B.
- Em um relacionamento um para muitos, um registro na Tabela A corresponde a muitos registros na Tabela B.
- Em um relacionamento muitos para muitos, muitos registros na Tabela A correspondem a muitos registros na Tabela B.
Consulte Sobre relacionamentos.
- um cliente pode ter muitas faturas
- um produto pode aparecer em muitas faturas
- uma fatura pode ter muitos produtos
- Observe que existe um relacionamento muitos para muitos entre Faturas e Produtos. Você não pode definir um relacionamento muitos para muitos diretamente entre duas tabelas.
Os bancos de dados relacionais processam relacionamentos um para um e um para muitos diretamente. Você deve resolver o relacionamento muitos para muitos usando uma tabela intermediária que decompõe o relacionamento muitos para muitos em dois relacionamentos um para muitos. Para solucionar o problema deste exemplo, adicione a tabela intermediária Itens de linha para armazenar informações sobre os produtos vendidos.
- um cliente pode ter muitas faturas
- uma fatura pode ter muitos itens de linha
- um produto pode aparecer em muitos itens de linha
- Determine os campos que cada tabela precisará.
Cada tabela tem apenas um assunto e todos os campos na tabela descrevem somente esse assunto. Por exemplo, os campos em um registro da tabela Clientes armazenam juntos todas as informações sobre um cliente.
Pelo mesmo motivo, você deve atribuir a cada cliente um número de identificação exclusivo. No seu banco de dados, isso é uma chave primária. Você não iria inserir o número de identificação de um cliente na tabela, a menos que tivesse um novo cliente para adicionar, de modo que a existência de um número de cliente determina a existência de um registro. A tabela Clientes também poderia ter campos para o nome, endereço e número de telefone do cliente.
Uma tabela Produtos poderia ter campos para o número de identificação de um produto, o preço unitário de cada produto e a quantidade em estoque. Uma tabela Itens de linha poderia ter campos para números de identificação de produtos e faturas, o nome, preço unitário, quantidade e preço total de cada produto vendido. Uma tabela Faturas poderia ter campos para o número de identificação da fatura, data do pedido e vendedor.
- Determine o campo de chave primária (ou campos para um relacionamento de vários critérios) de cada tabela e indique cada um no seu plano. Em seguida, indique os campos de chave externa em cada tabela.
Neste exemplo:
- as chaves primárias são Clientes::ID do cliente, Faturas::ID da fatura, Produtos::ID do produto e Itens de linha::ID do item
- as chaves externas são Faturas::ID do cliente e Itens de linha::ID do produto
- Para cada tabela, decida quais campos armazenarão dados e quais campos serão usados de outras tabelas (relacionadas).
Baseado no assunto de uma tabela, você pode ver onde faz sentido armazenar os dados e onde usar os dados de uma tabela relacionada. Com exceção dos campos de chave, todos os campos deverão aparecer somente uma vez no seu banco de dados. Remova as ocorrências de campos que não dizem respeito ao assunto da tabela.
- Conecte cada chave primária à sua chave externa correspondente na tabela relacionada.
O que estabelece um relacionamento entre as tabelas é que seus campos de chave contêm dados que correspondem aos critérios do relacionamento.
- um cliente pode ter muitas faturas diferentes, mas uma fatura individual pode ter somente um cliente
- uma fatura pode ter muitos itens de linha, mas um item de linha individual aparece em uma fatura
- um produto pode aparecer em muitos itens de linha, mas um item de linha individual tem somente um produto
Este exemplo mostra que:
Depois de resolver o relacionamento de muitos para muitos, este exemplo mostra que:
Para exibir os dados do cliente na tabela Faturas, você deve ter um campo comum entre as duas tabelas para criar um relacionamento. ID do cliente é esse campo comum. Na tabela Clientes é a chave primária; na tabela Faturas é a chave externa.
Na tabela Itens de linha, ID do produto é o campo comum entre as tabelas Itens de Linha e Produtos. Na tabela Produto, esse campo é a chave primária; na tabela Itens de linha é a chave externa.
Esses campos de chave são um tipo de campo de correspondência. Consulte Sobre relacionamentos.
Agora, esse plano indica que: