Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

angelorubin

Sintaxe SQL SELECT

Recommended Posts

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.

Compartilhar este post


Link para o post
Compartilhar em outros sites

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!

Compartilhar este post


Link para o post
Compartilhar em outros sites

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 !

Compartilhar este post


Link para o post
Compartilhar em outros sites

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.

Compartilhar este post


Link para o post
Compartilhar em outros sites

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.

Compartilhar este post


Link para o post
Compartilhar em outros sites

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.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Acho que poderia fazer da seguinte forma:

 

- vm_cliente

-- (id_vm_cliente)

 

- vm_compra

-- (id_vm_compra, vm_cliente_id_vm_cliente)

 

- vm_pagamento

-- (id_vm_pagamento, vm_compra_id_vm_compra)

Compartilhar este post


Link para o post
Compartilhar em outros sites

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.

Compartilhar este post


Link para o post
Compartilhar em outros sites

... 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.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Bacolhada braba...

 

Delete o banco inteiro, leia sobre modelagem e normalizaçao e refaça corretamente, seu modelo eh uma bomba relogio.

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.