Base de dados - Normalização

Soldi3r^^

Power Member
Boas pessoal, preciso de ajuda urgentemente.. tenho uma tabela chamada "Facturas" que não se encontra normalizada, preciso de ajuda pois não estou a ver solução para isto :S

Esquema da BD:

drawing4za3.jpg


Como podem ver tenho uma relação N-N, o que não pode ser....

ajudem please...

Cumps.
 
nova tabela

Nome: Linhas Factura
Campos:
*N_Factura
*ID_Linha
ID_Produto
...

Obrigado pela dica, estava mesmo com uma branca...

aqui fica a alteração.. penso estar tudo certo agora..

drawing4no8.jpg


ups tenho um erro aqui.. lol.. falta o campo ncliente na tabela facturas.. lol.. :P
 
Última edição:

Penso que a relação que apresento na imagem está errada, deveria ser N<-1.

Passa a lêr-se uma factura tem várias linhas e um produto está em várias linhas.
 
A tabela que relaciona produtos com facturas (produtos_factura ou linhas_factura) deveria (em minha opinião) incluir mais dados (se bem que não conheço o sistema que estás a desenvolver):
Código:
[B]tab_produtos_facturas[/B]
[I]id_produto_factura[/I] (PK) : chave primária (id da linha)
[I]fk_id_factura[/I] (FK) : chave estrangeira para id_factura em tab_facturas
[I]fk_id_produto[/I] (FK) : chave estrangeira para id_produto em tab_produtos
[I]preco_venda[/I] : preço unitário do produto na linha
[I]desconto_perc[/I] : percentagem do desconto aplicada ao produto na linha
[I]iva_perc[/I] : percentagem do IVA aplicado ao produto na linha
[I]qt[/I] : quantidade do produto na linha
[I]preco_final[/I] : preço final do produto na linha
[I]desconto_valor[/I] : valor do desconto aplicado ao produto na linha
[I]iva_valor[/I] : valor do IVA aplicado ao produto na linha
[I]observacoes[/I] : observações adicionais sobre o produto nesta linha (se necessário)
[I]escalao_iva[/I] : escalão do IVA aplicado ao produto
Neste caso, o campo id_linha sugerido perlo Armadillo seria a chave primária desta tabela (id_produto_factura).
 
Última edição:

Penso que a relação que apresento na imagem está errada, deveria ser N<-1.

Passa a lêr-se uma factura tem várias linhas e um produto está em várias linhas.

Exacto tens razão.. enganei-me.. obrigado por reparares...

N linhas tem 1 produto, 1 produto está em N linhas...

PS: imagem actualizada!

A tabela que relaciona produtos com facturas (produtos_factura ou linhas_factura) deveria (em minha opinião) incluir mais dados (se bem que não conheço o sistema que estás a desenvolver):
Código:
[B]tab_produtos_facturas[/B]
[I]id_produto_factura[/I] (PK) : chave primária (id da linha)
[I]fk_id_factura[/I] (FK) : chave estrangeira para id_factura em tab_facturas
[I]fk_id_produto[/I] (FK) : chave estrangeira para id_produto em tab_produtos
[I]preco_venda[/I] : preço unitário do produto na linha
[I]desconto_perc[/I] : percentagem do desconto aplicada ao produto na linha
[I]iva_perc[/I] : percentagem do IVA aplicado ao produto na linha
[I]qt[/I] : quantidade do produto na linha
[I]preco_final[/I] : preço final do produto na linha
[I]desconto_valor[/I] : valor do desconto aplicado ao produto na linha
[I]iva_valor[/I] : valor do IVA aplicado ao produto na linha
[I]observacoes[/I] : observações adicionais sobre o produto nesta linha (se necessário)
[I]escalao_iva[/I] : escalão do IVA aplicado ao produto
Neste caso, o campo id_linha sugerido perlo Armadillo seria a chave primária desta tabela (id_produto_factura).


exacto eu sei, no entanto isto é um pouco em cima da hora e não devo ter tempo de adicionar todas essas funcionalidades.. no entanto mais tarde certamente irei incluir, obrigado pela sugestão.
 
Última edição:
Back
Topo