Ir para conteúdo

POWERED BY:

Arquivado

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

marvi

Cadastro no banco

Recommended Posts

Olá pessoal,

 

Tenho um cadastro em que tem um campo no banco de dados chamado “Opção”

 

Assim, se a pessoa seleciona 3 produtos, ficará no banco de dados:

 

Produto 1 – 1 opção

Produto 2 – 2 opção

Produto 3 – 3 opção

 

Isso ele faz já no loop

 

for x = 1 to qtd

opc= x&"º opção"

        sql = "insert into pedidos (pedido, cliente, opcao, id) VALUES ('" & request.form("pedido"&x)& "','" & cliente& "','" & opc& "','" & varid& "')"
    Set rsprodutos=Conexao.Execute(sql)
    end if
next

next

Veja que tem o campo “opcao" no insert e uma variável & opc& que surgi no loop na parte: opc= x&"º opção"

 

Aí se o loop der 3 voltas, ficará 1,2,3 na variável & opc& que é feito no opc= x&"º opção", como podem ver

 

Até aí tudo bem, funciona certo. Mas se a pessoa voltar e cadastrar mais dois produtos, será o novo loop e farar 1,2,3 de novo, aí no banco ficará

 

No primeiro loop:

 

Produto 1 – 1 opção

Produto 2 – 2 opção

Produto 3 – 3 opção

 

No segundo loop, quando cara resolve de novo:

 

Produto 4 – 1 opção

Produto 5 – 2 opção

Produto 6 – 3 opção

 

Veja que a opção se repete: 1,2,3, pois ele voltar a dar o loop no insert do zero, e o certo era saber de alguma forma qual foi a ultima opção e continuar a colocar numero novo. Tipo, a ultima opção acima foi: Produto 6 – 3 opção e então seria no próximo cadastro, Produto 6 – 4 opção

 

Pois ele veria a ultima opção e colocava mais um, mas no campo do banco fica “3 opção”, como ver a ultima opção e colocar mais um, se o campo não numero é texto? Entendem?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Sempre será:

 

Produto 1 – 1 opção

Produto 4 – 4 opção

Produto 6 – 6 opção

 

(o número do produto igual da opção)

 

Ou pode ser assim:

 

Produto 2 – 1 opção

Produto 3 – 2 opção

Produto 4 – 3 opção

 

(numero do produto difere da opção)

 

???

Compartilhar este post


Link para o post
Compartilhar em outros sites

você pode antes recuperar o ultimo registro incluido, você pode usar o SQL Last()

A função Last() retorna o último valor da coluna selecionada.

 

SELECT LAST(column_name) FROM table_name

 

existem alguns tópicos sobre este assunto no forum, da´uma pesquisada...

 

no SQL SERVER, você pode recuperar essa valor com

 

SELECT @@IDENTITY

 

no MySQL você pode usar o LAST_INSERT_ID()

Compartilhar este post


Link para o post
Compartilhar em outros sites

responda o questionamento do cláudio pois ficou vago o que desejas

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.