Usuário com melhor resposta
SqlDataReader capturar o retorno

Pergunta
-
Olá , sou novo então me desculpem caso eu não consiga me "expressar" muito bem.
Estou fazendo uma consulta no sqlserver com o seguinte código. Ele me retorna os dados das colunas para que eu possa os capturar pelo array utilizando reader[]Quando se trata de pegar os dados apenas do primeiro registro no banco de dados está tudo certo , mas como faço para acessar os próximos registros do meu retorno?
Ou pelo menos ir para a próxima linha? Para ler os dados através do array ?SqlCommand cmd = new SqlCommand(sql, con); cmd.CommandType = CommandType.Text; SqlDataReader reader; con.Open(); reader = cmd.ExecuteReader(); try { reader.Read(); textBox1.Text = reader[0].ToString(); } catch { MessageBox.Show("erro"); }
Respostas
-
Você pode iterar sobre a consulta retornada do banco.
while (reader.Read()) { int coluna1 = reader.GetInt32(0); string coluna2 = reader.GetString(1); string coluna3 = reader.GetString(2); Console.WriteLine("Coluna1 = {0}, Coluna2 = {1}, Coluna3 = {2}", weight, name, breed); }
O bloco acima usa o while para acessar cada linha da consulta enquanto houver, e as próximos comandos pegam as colunas de acordo com o index delas.
- Marcado como Resposta Thiagopc domingo, 21 de junho de 2015 03:26
Todas as Respostas
-
Você pode iterar sobre a consulta retornada do banco.
while (reader.Read()) { int coluna1 = reader.GetInt32(0); string coluna2 = reader.GetString(1); string coluna3 = reader.GetString(2); Console.WriteLine("Coluna1 = {0}, Coluna2 = {1}, Coluna3 = {2}", weight, name, breed); }
O bloco acima usa o while para acessar cada linha da consulta enquanto houver, e as próximos comandos pegam as colunas de acordo com o index delas.
- Marcado como Resposta Thiagopc domingo, 21 de junho de 2015 03:26
-