Gostaria de discutir sobre não utilizar um código como chave primária. Vamos ao exemplo:
CLIENTES.DBF
ID C (10)
CODIGO C (5)
NOME C (30)
PRODUTOS.DBF
ID C (10)
CODIGO C (5)
NOME C (30)
PEDIDOS.DBF
ID C (10)
CODIGO C (5)
DATA D (8)
CLIENTE C (10)
PEDIDOS_ITENS.DBF
ID C (10)
PRODUTO C (10)
QTDADE N (5)
VALOR N (12,2)
Agora vamos ao que interessa. Nas tabelas acima, os campos ID correspondem a chave primária de cada tabela. Conforme discutido na terceira reunião devemos utilizar este campo para fazermos nossas relações, portanto o CLIENTE da tabela PEDIDOS e o PRODUTO da tabela PEDIDOS_ITENS armazenam os valores ID da tabela CLIENTES e PRODUTOS respectivamente.
Gostaria de discutir o lado prático disso.
Caso 1) Campo CLIENTE da tabela PEDIDOS
Ok, o usuário tem um textbox na tela onde ele digita o CÓDIGO (e não o ID) do cliente. O que eu devo fazer? Procurar o código do cliente na tabela CLIENTES e se encontrado, armazenar o seu ID em algum lugar... Mas onde?
Caso 2) Campo PRODUTO da tabela PEDIDOS_ITENS
O mesmo caso acima. O cliente digita o código e eu devo procurar o ID. Se encontrado, onde armazenar...
Alguém utiliza esse modelo?
[]s
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Rodolfo Duarte