none
Pegar dados no Banco pelo ID - Mysql RRS feed

  • Pergunta

  • Olá Pessoa,

    Tenho a Minha Aplicação de tarefas, com o seguinte Banco:

    CREATE TABLE `tarefas` (
      `id` int(11) NOT NULL AUTO_INCREMENT,
      `nometarefa` varchar(50) NOT NULL DEFAULT '',
      `dataentrega` varchar(50) NOT NULL DEFAULT '',
      `imagem` blob,
      `descricaotarefa` varchar(400) NOT NULL DEFAULT '',
      `comentario` varchar(350) DEFAULT NULL,
      `status` binary(1) NOT NULL DEFAULT '\0',
      PRIMARY KEY (`id`)
    ) ENGINE=InnoDB AUTO_INCREMENT=12 DEFAULT CHARSET=latin1;

    Ai Tenho uma tela para Cadastrar estes Dados, o que ocorre sem problemas.

    Porém eu gostaria de puxar estes dados para Editar,Excluir e Buscar.

    Eu consigo puxar os dados utilizando o campo "nometarefa", mas como não descrevi o ID nos parametros eu não sei Fazer isso. 

    Deem uma Olhada:

    protected void btnEditar_Click(object sender, EventArgs e) { // define a string de conexão string strConnection = "Server=localhost;Database=donaceleste;Uid=DonaCeleste;Pwd=XXXXXXX;"; //cria a conexão com o banco de dados MySqlConnection dbConnection = new MySqlConnection(strConnection); //cria um comando MySqlCommand cmdQry = dbConnection.CreateCommand(); //Instrução SQL com parâmetros

    //ESTA EDITANDO PERFEITAMENTE, MAS LEVANDO EM CONSIDERAÇÃO O NOME DA TAREFA, PORTANTO A UNICA COISA QUE NÃO EDITA É O NOME DA TAREFA, POIS ELA É O ID DA CONEXAO cmdQry.CommandText = "UPDATE tarefas SET dataentrega = @dataentrega, imagem = @imagem, descricaotarefa = @descricaotarefa, comentario = @comentario, status = @status WHERE nometarefa = @nometarefa;"; // definindo os parâmetro: nome , tipo de dados e tamanho cmdQry.Parameters.Add("@nometarefa", MySqlDbType.VarChar, 50); cmdQry.Parameters.Add("@dataentrega", MySqlDbType.VarChar, 50); cmdQry.Parameters.Add("@imagem", MySqlDbType.TinyBlob); cmdQry.Parameters.Add("@descricaotarefa", MySqlDbType.VarChar, 400); cmdQry.Parameters.Add("@comentario", MySqlDbType.VarChar, 350); cmdQry.Parameters.Add("@status", MySqlDbType.Bit); //atribuindo valores aos parâmetros cmdQry.Parameters["@nometarefa"].Value = txtNomeTarefa.Text; cmdQry.Parameters["@dataentrega"].Value = txtDataEntregaTarefa.Text; cmdQry.Parameters["@imagem"].Value = uploadImagem.FileBytes; cmdQry.Parameters["@descricaotarefa"].Value = txtDescricaoDaTarefa.Text; cmdQry.Parameters["@comentario"].Value = txtComentario.Text; cmdQry.Parameters["@status"].Value = rblStatus.Text; try { // abre o banco dbConnection.Open(); // executa a query cmdQry.ExecuteNonQuery(); Response.Write("<script language=javascript>"); Response.Write("alert('Dados Salvos com sucesso.')"); Response.Write("</script>"); } //Trata a exceção catch (Exception ex) { Response.Write("Error: " + ex.Message); } finally { //fecha a conexao dbConnection.Close(); } }


    Como eu Faço para Editar os Campos com a minha String assim:

    cmdQry.CommandText = "UPDATE tarefas SET nometarefa = @nometarefa, dataentrega = @dataentrega, imagem = @imagem, descricaotarefa = @descricaotarefa, comentario = @comentario, status = @status WHERE id = @id ;";


    sexta-feira, 17 de agosto de 2012 19:31

Respostas

  • Leia esse tuto

    http://www.codeproject.com/Articles/438259/Insert-Update-Search-and-Delete-CRUD-operation-usi


    Não esqueça de usar o componente </> na barra para posta seu código. Microsoft MCPD,MCTS,MCC

    • Marcado como Resposta Harley Araujo terça-feira, 21 de agosto de 2012 11:43
    segunda-feira, 20 de agosto de 2012 12:32
    Moderador
  • Troca @campo por ?campo

    cmdQry.CommandText = "UPDATE tarefas SET nometarefa = ?nometarefa, dataentrega = ?dataentrega, imagem = ?imagem, descricaotarefa = ?descricaotarefa, comentario = ?comentario, status = ?status WHERE id = ?id ;";


    Rafael Boschini

    • Marcado como Resposta Harley Araujo terça-feira, 21 de agosto de 2012 11:43
    segunda-feira, 20 de agosto de 2012 19:52

Todas as Respostas

  • Alguém? Nenhuma alma caridosa.  :/

    Como eu Faço para puxar e Editar os Campos  via ID como a minha query declarada assim:

    sábado, 18 de agosto de 2012 03:47
  • Faz assim:

    SELECT * FROM tarefas WHERE id = LAST_INSERT_ID();



    http://samuelcazelli.blogspot.com/

    sábado, 18 de agosto de 2012 11:11
  • Obrigado, mas não me adianta pegar só o Ultimo, eu tenho que pegar os dados referente ao ID da tarefa que eu quiser atualizar.

    Como eu faço isso?

    domingo, 19 de agosto de 2012 22:46
  • Leia esse tuto

    http://www.codeproject.com/Articles/438259/Insert-Update-Search-and-Delete-CRUD-operation-usi


    Não esqueça de usar o componente </> na barra para posta seu código. Microsoft MCPD,MCTS,MCC

    • Marcado como Resposta Harley Araujo terça-feira, 21 de agosto de 2012 11:43
    segunda-feira, 20 de agosto de 2012 12:32
    Moderador
  • Troca @campo por ?campo

    cmdQry.CommandText = "UPDATE tarefas SET nometarefa = ?nometarefa, dataentrega = ?dataentrega, imagem = ?imagem, descricaotarefa = ?descricaotarefa, comentario = ?comentario, status = ?status WHERE id = ?id ;";


    Rafael Boschini

    • Marcado como Resposta Harley Araujo terça-feira, 21 de agosto de 2012 11:43
    segunda-feira, 20 de agosto de 2012 19:52