Command.ExecuteNonQuery() executa uma instrução t-sql ou procedimento armazenado sem um valor de retorno. Geralmente é usado para inserir, excluir, atualizar e outras operações para retornar o número de linhas afetadas.
Command.ExecuteRader() executa uma consulta que retorna um conjunto de resultados
Command.ExecuteScalar() executa uma consulta que retorna um único valor. O tipo de valor de retorno é objeto.
Geralmente usado para executar consultas usando funções agregadas como contagem, máximo, mínimo, média etc.
conexão.CreateCommand()
Crie um objeto Command com base no objeto atualmente vinculado
int?EndereçoId;
Defina um tipo de valor anulável
EndereçoId.HasValue
Determine se tem valor
AddressId.Value.ToString();
Converta seu valor para o tipo String
commandText pode usar 2 instruções SQL separadas por ";" para retornar vários conjuntos de resultados.
Use NextResult no DataReader para obter o próximo conjunto de resultados.
Usando objetos de parâmetro no comando
1,0
sqlCommand.Parameters.Add("@pname",SqlDbType.VarChar).Value=this.textBox1.Text;
2,0
sqlCommand.Parameters.AddWithValue("@pname",this.textBox1.Text);
Obtenha um objeto de parâmetro por índice ou nome de parâmetro
sqlCommand.Parameters[índice|pnome]
Usar transações
1Crie um objeto de transação
XxxTransaction tran = XxxConnection.BeginTransaction()
Sql:SqlTransaction tran = SqlConnection.BeginTransaction();
2 Especifique uma transação para o objeto Command
sqlCommand.Transaction = tran
3Execute o comando
sqlCommand.ExecuteNonQuery()
4Confirmar ou reverter transação
tran.Commit()
tran.Rollback()
Quando a transação não termina, por padrão os registros envolvidos não podem ser operados e ficam bloqueados. Este é o nível de isolamento da transação. Se quiser modificar o nível de isolamento ao abrir uma transação, você pode especificar seu nível de isolamento.
-