O objeto Command tem como objetivo executar as instruções SQL, alem de retornar os dados do Banco para o usuário.
Para executar uma instrução SQL utilizando o SQL Server, devemos criar uma instância da classe SqlCommand (namespace System.Data.SqlCliente). Para o Oracle, utilizamos a classe OleDbCommand (namespace System.Data.OleDb).
Exemplo:
SqlCommand cmd = new SqlCommand(“SELECR * FROM Clientes”, conexão_banco)
Métodos do objeto Command para executar instruções SQL:
ExecuteScalar(): executa uma instrução SQL que retorna um único valor escalar (uma linha e uma única coluna). É útil quando você precisa retornar o resultado de uma função agregada, como Count(), Min(), AVG().
Exemplo:
SqlCommand cmd = new SqlCommand(“SELECT COUNT(*) FROM Clientes”, conexão_banco;)
int result = cmd.ExecuteScalar();
ExecuteReader(): executa uma instrução SQL que retorna um ou mais conjunto de dados. Este método retorna como resultado um objeto do tipo SqlDataReader (não é necessário declarar com o comando "New" pois quem cria a instancia desta classe é o próprio método ExecuteReader do SqlCommand). Enquanto o SqlDataReader está em uso é necessário ter um objeto do tipo SqlConnection ativo, ou seja, uma conexão com a fonte de dados. Para lermos os dados de um SqlDataReader precisamos chamar o método Read(). Este método retorna como resultado um valor boleano (true/false). Caso o valor seja verdadeiro, significa que o SqlDataReader conseguiu ler os dados do conjunto de dados selecionado, e que os valores das colunas estão disponíveis para leitura. Caso ele retorna falso, significa que a consulta chegou ao fim, e que não existem mais dados a serem lidos.
Exemplo:
SqlCommand cmd = new SqlCommand(“SELECT * FROM Clientes”, conexao_banco);
SqlDataReader dr = cmd.ExecuteReader();
While(dr.Read())
{
}
ExecuteNonQuery(): executa uma instrução SQL que não retorna qualquer valor. É utilizado nas operações de alteração de dados: INSERT, UPDATE ou DELETE. O valor retornado é o número de registros afetados na execução da instrução SQL.
Exemplo:
SqlCommand cmd = new SqlCommand(“UPDATE Clientes SET status=’A’ WHERE id=1”, conexao_banco);
cmd.ExecuteNonQuery();
Esta apresentação reflete a opinião pessoal do autor sobre o tema, podendo não refletir a posição oficial do Portal Educação.
por Colunista Portal - Educação
O Portal Educação possui uma equipe focada no trabalho de curadoria de conteúdo. Artigos em diversas áreas do conhecimento são produzidos e disponibilizados para profissionais, acadêmicos e interessados em adquirir conhecimento qualificado. O departamento de Conteúdo e Comunicação leva ao leitor informações de alto nível, recebidas e publicadas de colunistas externos e internos.
UOL CURSOS TECNOLOGIA EDUCACIONAL LTDA, com sede na cidade de São Paulo, SP, na Alameda Barão de Limeira, 425, 7º andar - Santa Cecília CEP 01202-001 CNPJ: 17.543.049/0001-93