Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Boa tarde,
Estou com uma dúvida que me atormenta a dias e resolvi recorrer a ajuda dos amigos aqui do forum.
Eu tenho uma tabela com seguinte estrutura:
tabela vm_compras
id_compra
data_venc_01
valor_parc_01
data_venc_02
valor_parc_02
data_venc_03
valor_parc_03
data_venc_04
valor_parc_04
data_venc_05
valor_parc_05
A tabela possui mais itens, porém os que preciso manipular são esses acima.
Eu recebo as variaveis $id_compra, $data_venc, $valor_parc de um formulario e capto-as com $_POST individualmente, até ai tudo normal.
Mas na consulta (SELECT) que eu me complico,
Com as 3 variaveis que vem do formulário eu preciso fazer DELETE ou UPDATE na tabela (vm_compras) no campo valor_parc.
Entretanto, existe 5 campos valor_parc(1,2,3,4,5) e 5 cinco campos data_venc(1,2,3,4,5) na tabela mas não consigo imaginar como encontra-los e montar o SELECT ou o UPDATE !
Se alguem pudesse me clarear o caminho eu agradeceria muito.
Aguardo.
Obrigado.
>
pelo que eu entendi a sua tabela tabela vm_compras compras não tem um id!
Crie um campo para esta tabela como id ou código campo chave para você trabalhar com os dados dela assim ira fica fácil para você realizar as operações sobre a mesma!
Boa noite,
Se você notar bem no post anterior, na tabela vm_compras tem um campo chamado id_compra !
Você tem ma minha opinião um problema de modelo.
Se tivesse algo do tipo :
tabela vm_compras
id_compra
num_parcela
data_venc
valor_parc
Poderia ter de 1 a N parcelas e o número da parcela seria a chave do registro.
Uma constraint ou trigger poderia ser usada para implementar um regra de um máximo de 5 parcelas por exemplo.
No modelo apresentado as parcelas tem de ser direcionadas para campos especificos que gera um complicador.
Boa tarde,
Então Motta, você me aconselha a modelar uma terceira tabela?
Porque eu possuo 2 tabelas e relacionamento (1 para N) entre elas, que são as tabelas vm_clientes e vm_compras.
Você acha que seria uma boa solução construir a terceira tabela somente para a forma de pagamento, seria o caso?
Aguardo.
Não pelo que entendi a vm_compras é que deveria ser alterada, a não ser que existam outros campos nesta tabela, aí sim ela deveria ser normalizada para o parcelamento.
Acho que poderia fazer da seguinte forma:
-- (id_vm_cliente)
-- (id_vm_compra, vm_cliente_id_vm_cliente)
-- (id_vm_pagamento, vm_compra_id_vm_compra)
Então Motta,
Realmente existem outros campos na tabela vm_compras.
Inclusive os produtos da compra estão juntos.
Por exemplo eu tenho 30 campos para produtos, como devo armazená-los no banco?
Assim por exemplo:
vm_compras
id_compra
id_cliente
num_parc
quant_01
prod_01
preco_01
quant_02
prod_02
preco_02
.
.
.
Seria isso?
Ou eu devo colocar apenas um campo : num_parc, quant, prod, preco?
Aguardo.
... 30 campos para produtos ...
O que se faz se o cliente comprar o 31º ?
Outro modelo que deveria ser normalizado.
Procure ler sobre as formas normais de BD.
Bacolhada braba...
Delete o banco inteiro, leia sobre modelagem e normalizaçao e refaça corretamente, seu modelo eh uma bomba relogio.
pelo que eu entendi a sua tabela tabela vm_compras compras não tem um id!
Crie um campo para esta tabela como id ou código campo chave para você trabalhar com os dados dela assim ira fica fácil para você realizar as operações sobre a mesma!