none
Incrementação, contador com Banco de Dados RRS feed

  • Pergunta

  • Seguinte amigos, tenho uma aplicação em C#

    esta aplicação ja possui conexão com um banco de dados e ja esta se comunicando com uma tabela

    preciso de um código, que ao clicar em um botão este incremente o valor 5 a uma das colunas da tabela chamada 'presença', ate ai tudo bem, porém apos a primeira inserção do valor 5, ao próximas nunca somam o valor atual + 5, ou seja, sempre que clico no botão ele só "reescreve por cima" o valor 5 toda hora, desejaria que ao clicar ao botão ele obtivesse o valor já salvo em si e somasse +5;

    att, Murilo, espero que alguém me ajude ;-;

    segunda-feira, 26 de outubro de 2015 18:54

Respostas

  • @presenca é onde você armazena este valor 5?

    Se for campo int, ou decimal, pode fazer assim

    UPDATE Alunos set Presenca = Presenca + @presenca WHERE UID = @tempUid


    Leonardo D'Amato

    • Sugerido como Resposta Leonardo N. D'Amato quarta-feira, 28 de outubro de 2015 10:08
    • Marcado como Resposta Marcos SJ quarta-feira, 28 de outubro de 2015 13:04
    terça-feira, 27 de outubro de 2015 18:08

Todas as Respostas

  • Poste seu código para que possamos avaliar e ajudar.


    Leonardo D'Amato

    terça-feira, 27 de outubro de 2015 09:49
  • Postar o código ajudaria muito né amigo?

    Mas, de qualquer forma, você precisa fazer um select pra pegar essa informação primeiro,

    depois, incrementar o valor 5 e fazer o update.

    Você precisa se atentar se ao atualizar a informação, está realmente atualizando o valor ou está inserindo um novo registro na tabela.

    terça-feira, 27 de outubro de 2015 10:08
  • if(Verificou == true){
    				COM4.Write("1");
    				txtTempUID.Clear();
    				Conexao.Open();
    				Query.CommandText = "UPDATE Alunos set Presenca = @presenca WHERE UID = @tempUid";
    				Query.Parameters.AddWithValue("@presenca", Presenca);
    				Query.Parameters.AddWithValue("@tempUid", tempUID);
    				Query.ExecuteNonQuery();
    				MessageBox.Show("Terminal Acessado !", "Acesso Realizado");                        
    			} else {
    				MessageBox.Show("ACESSO NEGADO", "ACESSO NEGADO", MessageBoxButtons.OK, MessageBoxIcon.Error);
    			}
    			Conexao.Close();
    			txtTempUID.Clear();
    			}
    não sei se vai ajudar, creio que só ira confundir mais, mais ta ai hehe, é uma integração com arduino, c# e mysql.
    terça-feira, 27 de outubro de 2015 18:02
  • @presenca é onde você armazena este valor 5?

    Se for campo int, ou decimal, pode fazer assim

    UPDATE Alunos set Presenca = Presenca + @presenca WHERE UID = @tempUid


    Leonardo D'Amato

    • Sugerido como Resposta Leonardo N. D'Amato quarta-feira, 28 de outubro de 2015 10:08
    • Marcado como Resposta Marcos SJ quarta-feira, 28 de outubro de 2015 13:04
    terça-feira, 27 de outubro de 2015 18:08
  • Obrigado mesmo amigo, mal pude eu perceber que a solução era tão simples, não sou muito desta área de MySQL, se soubesse que a lógica era basicamente a mesma teria eu mesmo descoberto, porém, você me ajudou de um tanto que não faz noção, novamente agradeço, atenciosamente, Murilo.
    terça-feira, 27 de outubro de 2015 19:06
  • Valeu, cara. :)

    Se o ajudou, marque como resposta. Assim ajudará mais pessoas com a mesma dúvida que você.

    Um abraço


    Leonardo D'Amato

    terça-feira, 27 de outubro de 2015 19:15