SqlCommand
SqlCommand es una clase en el espacio de nombres Microsoft.Data.SqlClient que se utiliza para ejecutar comandos SQL en una base de datos de SQL Server. Los comandos SQL más comunes que se utilizan con SqlCommand son INSERT, UPDATE y DELETE.
Para utilizar SqlCommand, primero debemos crear una instancia de la clase y luego establecer la conexión a la base de datos utilizando una instancia de SqlConnection. Luego, podemos crear un comando SQL utilizando el método CreateCommand de la instancia de SqlConnection. Por ejemplo:
using Microsoft.Data.SqlClient;
string connectionString = "Data Source=(local);Initial Catalog=nombre_de_la_base_de_datos;Integrated Security=True";
using (SqlConnection connection = new SqlConnection(connectionString))
{
connection.Open();
string sql = "INSERT INTO tabla (campo1, campo2) VALUES (@valor1, @valor2)";
using (SqlCommand command = new SqlCommand(sql, connection))
{
command.Parameters.AddWithValue("@valor1", valor1);
command.Parameters.AddWithValue("@valor2", valor2);
command.ExecuteNonQuery();
}
}
En este ejemplo, hemos creado una instancia de SqlConnection utilizando la cadena de conexión y luego hemos abierto la conexión utilizando el método Open. Luego, hemos creado un comando SQL utilizando la cadena de comando sql y la instancia de SqlConnection. Hemos utilizado el método AddWithValue de la instancia de SqlCommand para agregar los valores de los parámetros @valor1 y @valor2. Finalmente, hemos ejecutado el comando SQL utilizando el método ExecuteNonQuery.
Para modificar y borrar datos, podemos utilizar comandos SQL similares. Por ejemplo, para modificar datos, podemos utilizar el comando UPDATE. Para borrar datos, podemos utilizar el comando DELETE. Aquí hay un ejemplo de cómo utilizar el comando UPDATE:
using Microsoft.Data.SqlClient;
string connectionString = "Data Source=(local);Initial Catalog=nombre_de_la_base_de_datos;Integrated Security=True";
using (SqlConnection connection = new SqlConnection(connectionString))
{
connection.Open();
string sql = "UPDATE tabla SET campo1 = @valor1 WHERE campo2 = @valor2";
using (SqlCommand command = new SqlCommand(sql, connection))
{
command.Parameters.AddWithValue("@valor1", valor1);
command.Parameters.AddWithValue("@valor2", valor2);
command.ExecuteNonQuery();
}
}
En este ejemplo, hemos utilizado el comando UPDATE para modificar los valores del campo campo1 en la tabla tabla donde el valor del campo campo2 es igual a @valor2.
Aquí hay algunos métodos y propiedades comunes que se pueden utilizar con SqlCommand:
- Métodos
ExecuteNonQuery(): Ejecuta un comando SQL que no devuelve ningún resultado.ExecuteReader(): Ejecuta un comando SQL que devuelve un objetoSqlDataReaderque se puede utilizar para leer los resultados.ExecuteScalar(): Ejecuta un comando SQL que devuelve la primera columna de la primera fila del conjunto de resultados.Prepare(): Prepara un comando SQL para su ejecución.
- Propiedades
CommandText: Obtiene o establece el texto del comando SQL que se va a ejecutar.CommandTimeout: Obtiene o establece el tiempo de espera antes de que se agote el tiempo de espera de la ejecución del comando.CommandType: Obtiene o establece el tipo de comando SQL que se va a ejecutar.Connection: Obtiene o establece la conexión de base de datos que se va a utilizar para ejecutar el comando SQL.Parameters: Obtiene la colección de parámetros que se van a utilizar con el comando SQL.