Refinando o design
Quando tiver as tabelas, campos e relações necessários, crie e preencha as tabelas com dados de exemplo e tente trabalhar com as informações: criação de consultas, adição de novos registros, entre outros. Fazer isso ajuda a levantar os problemas potenciais — por exemplo, pode ser necessário adicionar uma coluna que se esqueceu de inserir durante a fase de design, ou pode haver uma tabela que deva ser dividida em duas tabelas para remover duplicação.
Confirme se é possível usar o banco de dados para obter as respostas desejadas. Crie rascunhos dos seus formulários e relatórios, e veja se eles apresentam os dados esperados. Procure por duplicações de dados desnecessárias e, quando encontrar alguma, altere o design para eliminá-la.
À medida que você faz experiências com o banco de dados inicial, provavelmente descobrirá espaço para melhoramentos. Seguem algumas coisas a serem verificadas:
· Você esqueceu de alguma coluna? Se esqueceu, as informações pertenciam a tabelas existentes? Se se trata de informações sobre alguma outra coisa, será necessário criar uma outra tabela. Crie uma coluna para cada item de informação que necessita de controle. Se as informações não podem ser calculadas a partir de outras colunas, é provável que exijam uma outra coluna.
· Existe alguma coluna desnecessária que possa ser calculada a partir de campos existentes? Se um item de informação puder ser calculado de outras colunas existentes — um preço descontado calculado do preço de varejo, por exemplo — em geral é melhor fazer exatamente isso e evitar criar uma nova coluna.
· Informações duplicadas são repetidamente inseridas em uma das tabelas? Em caso afirmativo, talvez seja necessário dividir a tabela em duas tabelas que tenham a relação um-para-muitos.
· Existem tabelas com vários campos, um número limitado de registros e vários campos vazios em registros individuais? Se for o caso, pense em criar novamente a tabela de modo que passe a ter menos campos e mais registros.
· Todos os itens de informações foram quebrados em partes úteis menores? Se for necessário criar relatório, classificar, pesquisar ou calcular um item de informação, coloque esse item em sua própria coluna.
· Cada coluna contém um fato sobre o tópico da tabela? Quando uma coluna não contém informações sobre o tópico da tabela é porque pertence a uma tabela diferente.
· Todas as relações entre tabelas são representadas tanto por campos comuns como por uma terceira tabela? As relações um-para-um ou um-para-muitos requerem colunas comuns. As relações muitos-para-muitos requerem uma terceira tabela.
Refinando a tabela Produtos
Suponhamos que cada produto no banco de dados de vendas de produto incida sobre uma categoria geral, como bebidas, condimentos ou frutos do mar. A tabela Produtos poderia incluir um campo que apresente a categoria de cada produto.Suponhamos que após examinar e refinar o design do banco de dados você decida armazenar uma descrição de categoria juntamente com o nome da categoria. Quando se adiciona um campo Descrição de Categoria à tabela Produtos, é preciso repetir todas as descrições de categoria de cada produto que incida nessa categoria — o que não é uma boa solução.
Uma solução mais adequada é transformar Categorias em um tópico novo para controle do banco de dados, com sua própria tabela e sua própria chave primária. Adicione então a chave primária da tabela Categorias à tabela Produtos como chave estrangeira.
As tabelas Categorias e Produtos têm uma relação um-para-muitos: uma categoria pode incluir mais de um produto, porém um produto só pode pertencer a uma categoria.
No momento de examinar as estruturas da tabela, preste atenção a grupos repetidos. Por exemplo, considere uma tabela contendo as seguintes colunas:
· Código do Produto
· Nome
· Código de Produto1
· Nome1
· Código de Produto2
· Nome2
· Código de Produto3
· Nome3
Aqui, cada produto é um grupo separado de colunas que diferem entre si apenas pela adição de um algarismo ao final do nome da coluna. Quando colunas numeradas dessa forma aparecerem, reexamine o design.Esse tipo de design tem várias falhas. Com relação aos iniciantes, força a colocação de um limite superior no número de produtos. Tão logo você exceda esse limite, será preciso adicionar um novo grupo de colunas à estrutura da tabela, o que é uma tarefa administrativa essencial.
Um outro problema é que os fornecedores com número de produtos inferior ao máximo irão desperdiçar espaço, uma vez que as colunas adicionais estarão vazias. A maior falha com relação a esse design é que isso torna várias tarefas difíceis de desempenhar, como a classificação ou indexação da tabela por código ou nome de produto.
Sempre que forem exibidos grupos repetidos, examine detalhadamente o design, visando a dividir a tabela em dois. No exemplo acima é melhor usar duas tabelas, uma para fornecedores e uma para produtos, vinculadas por código de fornecedor.
Nenhum comentário:
Postar um comentário