none
Consulta Banco de Dados RRS feed

  • Pergunta

  • Pessoal podem me ajudar com uma coisa, estou treinando com C# consulta ao banco de dados, fiz o método de inserir e está funcionando perfeitamente, já o de  consulta sempre está caindo no else código abaixo, podem me ajudar a encontrar o erro?

           public CadClienteDTO Consulta(String CPF)
            {
                try
                {
                    SqlCommand sql = new SqlCommand();
                    sql.Connection = BDConnection.Connection();
                    sql.CommandText = "select *from tbl_cliente where cpf = '@CPF'";
                    sql.Parameters.AddWithValue("@CPF", CPF);
                    SqlDataReader dr = sql.ExecuteReader();
                                    
                    if (dr.HasRows)
                    {
                        dr.Read();
                        cadCliente.Cod_cliente = dr.GetInt32(0);
                        cadCliente.Nome = dr.GetString(1);
                        cadCliente.Endereco = dr.GetString(2);
                        cadCliente.Nome_estado = dr.GetString(3);
                        cadCliente.Cidade = dr.GetString(4);
                        cadCliente.Cep = dr.GetString(5);
                        cadCliente.Cpf = dr.GetString(6);
                        cadCliente.Rg = dr.GetString(7);
                        cadCliente.Telefone = dr.GetString(8);
                        cadCliente.Celular = dr.GetString(9);
                        cadCliente.Email = dr.GetString(10);
                        cadCliente.Numero = dr.GetInt32(11);
                    }
                    else
                    {
                        MessageBox.Show("Erro de Consulta");
                    }
                }
                catch
                {
                    MessageBox.Show("Erro de Conexão");
    
                }
                finally
                {
                    BDConnection.fecharConexao();
                }
    
                return cadCliente;
            }

    segunda-feira, 1 de dezembro de 2014 22:15

Respostas

  • Pessoal podem me ajudar com uma coisa, estou treinando com C# consulta ao banco de dados, fiz o método de inserir e está funcionando perfeitamente, já o de  consulta sempre está caindo no else código abaixo, podem me ajudar a encontrar o erro?

           public CadClienteDTO Consulta(String CPF)
            {
                try
                {
                    SqlCommand sql = new SqlCommand();
                    sql.Connection = BDConnection.Connection();
                    sql.CommandText = "select *from tbl_cliente where cpf = '@CPF'";
                    sql.Parameters.AddWithValue("@CPF", CPF);
                    SqlDataReader dr = sql.ExecuteReader();
                                    
                    if (dr.HasRows)
                    {
                        dr.Read();
                        cadCliente.Cod_cliente = dr.GetInt32(0);
                        cadCliente.Nome = dr.GetString(1);
                        cadCliente.Endereco = dr.GetString(2);
                        cadCliente.Nome_estado = dr.GetString(3);
                        cadCliente.Cidade = dr.GetString(4);
                        cadCliente.Cep = dr.GetString(5);
                        cadCliente.Cpf = dr.GetString(6);
                        cadCliente.Rg = dr.GetString(7);
                        cadCliente.Telefone = dr.GetString(8);
                        cadCliente.Celular = dr.GetString(9);
                        cadCliente.Email = dr.GetString(10);
                        cadCliente.Numero = dr.GetInt32(11);
                    }
                    else
                    {
                        MessageBox.Show("Erro de Consulta");
                    }
                }
                catch
                {
                    MessageBox.Show("Erro de Conexão");
    
                }
                finally
                {
                    BDConnection.fecharConexao();
                }
    
                return cadCliente;
            }

    Tenta assim

    public CadClienteDTO Consulta(String CPF)
            {
                try
                {
                    SqlCommand sql = new SqlCommand();
                    sql.Connection = BDConnection.Connection();
                    sql.CommandText = "select *from tbl_cliente where cpf = '@CPF'";
                    sql.Parameters.AddWithValue("@CPF", CPF);
                    SqlDataReader dr = sql.ExecuteReader();
                                    
                    
                        if(dr.Read())
    {
                        cadCliente.Cod_cliente = dr.GetInt32(0);
                        cadCliente.Nome = dr.GetString(1);
                        cadCliente.Endereco = dr.GetString(2);
                        cadCliente.Nome_estado = dr.GetString(3);
                        cadCliente.Cidade = dr.GetString(4);
                        cadCliente.Cep = dr.GetString(5);
                        cadCliente.Cpf = dr.GetString(6);
                        cadCliente.Rg = dr.GetString(7);
                        cadCliente.Telefone = dr.GetString(8);
                        cadCliente.Celular = dr.GetString(9);
                        cadCliente.Email = dr.GetString(10);
                        cadCliente.Numero = dr.GetInt32(11);
                    }
                    else
                    {
                        MessageBox.Show("Erro de Consulta");
                    }
                }
                catch
                {
                    MessageBox.Show("Erro de Conexão");
    
                }
                finally
                {
                    BDConnection.fecharConexao();
                }
    

    terça-feira, 2 de dezembro de 2014 15:07

Todas as Respostas

  • Boa noite @Brian Robert, tudo bom?

    A sua consulta não deve está trazendo resultados.

    Se você executar a consulta no SSMS diretamente, ela retorna valores?


    Até mais,

    TP.


    Thiago Patrocinio

    terça-feira, 2 de dezembro de 2014 00:40
  • Pessoal podem me ajudar com uma coisa, estou treinando com C# consulta ao banco de dados, fiz o método de inserir e está funcionando perfeitamente, já o de  consulta sempre está caindo no else código abaixo, podem me ajudar a encontrar o erro?

           public CadClienteDTO Consulta(String CPF)
            {
                try
                {
                    SqlCommand sql = new SqlCommand();
                    sql.Connection = BDConnection.Connection();
                    sql.CommandText = "select *from tbl_cliente where cpf = '@CPF'";
                    sql.Parameters.AddWithValue("@CPF", CPF);
                    SqlDataReader dr = sql.ExecuteReader();
                                    
                    if (dr.HasRows)
                    {
                        dr.Read();
                        cadCliente.Cod_cliente = dr.GetInt32(0);
                        cadCliente.Nome = dr.GetString(1);
                        cadCliente.Endereco = dr.GetString(2);
                        cadCliente.Nome_estado = dr.GetString(3);
                        cadCliente.Cidade = dr.GetString(4);
                        cadCliente.Cep = dr.GetString(5);
                        cadCliente.Cpf = dr.GetString(6);
                        cadCliente.Rg = dr.GetString(7);
                        cadCliente.Telefone = dr.GetString(8);
                        cadCliente.Celular = dr.GetString(9);
                        cadCliente.Email = dr.GetString(10);
                        cadCliente.Numero = dr.GetInt32(11);
                    }
                    else
                    {
                        MessageBox.Show("Erro de Consulta");
                    }
                }
                catch
                {
                    MessageBox.Show("Erro de Conexão");
    
                }
                finally
                {
                    BDConnection.fecharConexao();
                }
    
                return cadCliente;
            }

    Tenta assim

    public CadClienteDTO Consulta(String CPF)
            {
                try
                {
                    SqlCommand sql = new SqlCommand();
                    sql.Connection = BDConnection.Connection();
                    sql.CommandText = "select *from tbl_cliente where cpf = '@CPF'";
                    sql.Parameters.AddWithValue("@CPF", CPF);
                    SqlDataReader dr = sql.ExecuteReader();
                                    
                    
                        if(dr.Read())
    {
                        cadCliente.Cod_cliente = dr.GetInt32(0);
                        cadCliente.Nome = dr.GetString(1);
                        cadCliente.Endereco = dr.GetString(2);
                        cadCliente.Nome_estado = dr.GetString(3);
                        cadCliente.Cidade = dr.GetString(4);
                        cadCliente.Cep = dr.GetString(5);
                        cadCliente.Cpf = dr.GetString(6);
                        cadCliente.Rg = dr.GetString(7);
                        cadCliente.Telefone = dr.GetString(8);
                        cadCliente.Celular = dr.GetString(9);
                        cadCliente.Email = dr.GetString(10);
                        cadCliente.Numero = dr.GetInt32(11);
                    }
                    else
                    {
                        MessageBox.Show("Erro de Consulta");
                    }
                }
                catch
                {
                    MessageBox.Show("Erro de Conexão");
    
                }
                finally
                {
                    BDConnection.fecharConexao();
                }
    

    terça-feira, 2 de dezembro de 2014 15:07
  • Sim, traz resultados normalmente
    terça-feira, 2 de dezembro de 2014 17:44