Estou programando em C#, tenho vários comandos de busca no SQL com MySQLConnection
Pergunto:
É possível guardar o resultado de uma pesquisa em uma variável?
Estou programando em C#, tenho vários comandos de busca no SQL com MySQLConnection
Pergunto:
É possível guardar o resultado de uma pesquisa em uma variável?
Sim claro, você pode guarda em Lista Genéricas ou Tipadas exemplo
Classe modelo
public class Funcionario
{
public int Id {get;set;}
public string Nome {get;set;}
}
Uma coleção de funcionarios, que podem ser dados trazidos do banco:
List<Funcionario> listaDeFuncionarios = new List<Funcionario>();
ou seja, uma variável com os resultados seria listaDeFuncionarios
.
Mas, por exemplo, eu no meu programa eu tenho uma pesquisa do tipo.
"SELECT nomes FROM vendas WHERE codvenda = 1"
esse resultado eu queria guardar em uma string nome; é possível?
Se for um nome somente seria assim, inclusive com ajustes na SQL para banco MySQL:
string nome = string.Empty;
MySqlConnection con = new MySqlConnection();
MySqlCommand command = new MySqlCommand("SELECT nome FROM alunos where id = 1", con);
MySqlDataReader reader = command.ExecuteReader();
if (reader.HasRows)
{
if (reader.Read())
{
nome = reader.GetString("nome");
}
}
//1 nome carregados do banco
nome
Se for uma lista de nomes seria assim:
List<string> nomes = new List<string>();
MySqlConnection con = new MySqlConnection();
MySqlCommand command = new MySqlCommand("SELECT nome FROM alunos", con);
MySqlDataReader reader = command.ExecuteReader();
if (reader.HasRows)
{
while (reader.Read())
{
nomes.Add(reader.GetString("nome"));
}
}
//lista de nomes carregados do banco
nomes...
Se for uma lista de valores seria assim:
public class Aluno
{
public int Id { get; set; }
public string Nome { get; set; }
}
List<Aluno> alunos = new List<Aluno>();
MySqlConnection con = new MySqlConnection();
MySqlCommand command = new MySqlCommand("SELECT id, nome FROM alunos", con);
MySqlDataReader reader = command.ExecuteReader();
if (reader.HasRows)
{
while (reader.Read())
{
alunos.Add(new Aluno
{
Id = reader.GetInt32("id"),
Nome = reader.GetString("nome")
});
}
}
//lista de alunos carregados do banco
alunos ...
Então vai depender do retorno da sua SQL se ela vai trazer 1 registro ou vários registros e também verificando se trará mais que uma coluna!
Perfeito!! Me ajudou mto! Obrigado .