none
como fazer um select no banco de dados e armazenar dentro de uma variavel C# RRS feed

  • Pergunta

  • Pessoal recém comecei a trabalhar Juntamento com banco de dados e C# e estou tendo problemas porque nao sei como armazenar o meu select dentro de uma variável meu código esta assim;

    A minha ideia é de pegar o select e verificar com o código do ticket para ver a autenticidade.

    É um código de estacionamento.

    Muito obrigado agradeço desde ja. 

    using (SqlConnection conexao = new SqlConnection())
                    {
                        conexao.ConnectionString = dadosParaConectarNoBanco;
    
                        using (SqlCommand comandoParaSerExecutado = new SqlCommand())
                        {
    
                            string comandoSqlEmFormatoString = String.Format("INSERT INTO Ticket (PlacaVeiculo, Status, HoraEntrada) VALUES ('{0}','{1}','{2}')", PlacaVeiculo, Status, HoraEntrada);
    
    
                            comandoParaSerExecutado.Connection = conexao;
    
    
                            comandoParaSerExecutado.CommandText = comandoSqlEmFormatoString;
    
    
                            conexao.Open();
    
    
                            comandoParaSerExecutado.ExecuteNonQuery();
    
    
                            conexao.Close();
                        }
                    }

    • Editado TiuKira sábado, 28 de novembro de 2015 15:26
    sábado, 28 de novembro de 2015 15:24

Respostas

  • Qual banco de dados voce usa?

    Esse é meu método para executar um Select eu uso MySql faço da seguinte maneira:

    //Executa comandos SELECT com paramentros e não concatenação
            public static DataTable execute_selectP(MySqlCommand comando)
            {
                //Cria o DataTable que receberá o resultado da Consulta
                DataTable dt = new DataTable();
    
                //Cria a conexão com a Base de Dados
                MySqlConnection Mcon = new MySqlConnection(Conexao.driver);
    
                //Tenta abrir a conexao
                try
                {
                    Mcon.Open();
               
    
                //Aponta ao MySqlCommand que esta vindo por parametro, qual será a conexão a ser utilizada
                comando.Connection = Mcon;
    
                //Cria o DataAdapter que executara o comando SQL, e mostra a ela qual comando executar
                MySqlDataAdapter dta = new MySqlDataAdapter(comando);
    
                //Preenche o DataTabel com o Retorno do Select
                dta.Fill(dt);
    
                //Fecha a conexao
                Mcon.Close();
    
                }
                catch (MySqlException erro)
                {
                   MessageBox.Show("Erro ao selecionar Registro");
                }
                //Retorna o DataTable ao solicitante
                return dt;
            }
    

    Veja bem este método espera um MySqlCommand e assim montariamos nosso select e executariamos passando o retorna para uma variavel

    //Monta uma String com o comando select
    String select = "select * from cliente where codCliente = ?codcliente";
    
    //Instancia um comando e passa o select a ele
    MySqlCommand comando = new MySqlCommand(select);
    
    //Passa os parametros ao comando, Neste caso digo que o ?codCliente = 1
    comando.Parameters.AddWithValue("?codcliente",1);
    
    //Crio um datatable que armazenara o retorno do Banco
    DataTable dt = new DataTable();
    
    //Executo o comando e armazeno no DataTable
    dt = execute_selectP(comando);

    A partir dai no nosso DataTable teremos o retorno do Banco, para passar este valor a variavel basta fazer o seguinte:

    //Passa o valor a uma variavel
    String nomeCliente = dt.Rows[0]["nomeCliente"].ToString();
    
    /* OBS: o valor que esta entre Aspas("") é o nome da coluna do banco de dados, Neste caso "nomeCliente" */

    So fazer isto para os demais campos da tabela e pronto...

    Este exemplo é com MySql, PAra funcionar no seu caso so remover MySQl como por exemplo:

    MySqlCommand comando = new MySqlCommand(comando);

    Ficaria assim:

    SqlCommand comando = new SqlCommand(comando);

    É UM POUCO COMPLICADO MAS É A MANEIRA CERTA DE SE FAZER, ESPERO TER AJUDADO.

    • Marcado como Resposta Marcos SJ segunda-feira, 30 de novembro de 2015 12:35
    sábado, 28 de novembro de 2015 23:37