none
Utilizando um "Distinct" no Update RRS feed

  • Pergunta

  • Bem, estou eu de novo com um problema...

    Tenho um Update do tipo carrinho de compras...Quando ele guarda o primeiro produto ele faz as alterações de modo satisfatório...O problema é quando estou colocando produtos, pois ele tem uma caixa de texto com o nome de quantidade, porém, quando é atualizado, todos os números dos vários produtos que estão na cesta, tentam ir para um único e mesmo campo do Banco de Dados...Já alterei o Where pro id do produto, já tentei colocar um Distinct (tal qual no Select) no Update, mas, infelizmente, nada...

    Testei com Arrays, e nesse caso não gostei pela dificuldade de manipulação, e preferi implementar pelo BD mesmo...
    Como proceder?
    terça-feira, 10 de junho de 2008 19:07

Todas as Respostas

  • Boa Tarde,

     

    Você teria que fazer um loop para cada textbox. No caso do SQL Server 2005, você pode tentar gravar um Xml com todos os dados e enviar o Xml para o banco de dados. Dentro do banco, você pode converter o Xml para linhas e colunas.

     

    [ ]s,

     

    Gustavo

     

    terça-feira, 10 de junho de 2008 20:58
  • Olá Gustavo, Obrigado pela resposta...
    Estou usando ACCESS. Mas, gostaria de utilizar ASP + BD mesmo.
    Bem tentei utilizar um loop, desse jeito:
    Code Snippet

    varqtde = Request.Form("qtde_do_carrinho")
    Arrayqtde = Split(varqtde, ",")

    For i = LBound(Arrayqtde) to Ubound(Arrayqtde)
    conexao.execute "Update tabela_pedidos set qtde = "& (Trim(Arrayqtde (i))) &", TotalPreco = " & (((Trim(Arrayqtde (I))) * rsalebaeCar("TotalPreco")) + (rsalebaeCar("TotalPreco"))) & " Where codPedido = " & rsalebaeCar("codPedido")

    Next


    Onde ocorreria a "separação" das quantidades. Mas ocorre o seguinte:
    - Quando tenho 2 produtos no carrinho, e altero a quantidade do segundo, essa nova quantidade que eu coloquei pro segundo produto vai imediatamente para o textedit do primeiro, após clicar com o botão atualizar. Como resolver esse problema???
    quinta-feira, 12 de junho de 2008 19:04