Consulta de inserción SQL en C#

Muhammad Maisam Abbas 16 febrero 2024
  1. Insertar SQL con el método de consulta simple en C#
  2. Insertar SQL con el método de consulta parametrizado en C#
Consulta de inserción SQL en C#

En este tutorial, discutiremos métodos para insertar registros en una base de datos en C#.

Insertar SQL con el método de consulta simple en C#

El método de consulta simple puede insertar datos en una tabla de base de datos utilizando la consulta SQL insert en C#. Este método es simple y fácil de implementar, pero no es seguro. Este método no puede evitar que nuestro código reciba inyecciones de SQL. El siguiente ejemplo de código nos muestra cómo podemos ingresar datos en una tabla de base de datos con el método de consulta simple en C#.

using System;
using System.Data.SqlClient;

namespace sql_insert {
  class Program {
    static void Main(string[] args) {
      string connectionString =
          "Data Source=.\SQLEXPRESS;Initial Catalog=ComputerShop;Integrated Security=True";
      SqlConnection connection = new SqlConnection(@connectionString);
      string query = "INSERT INTO Person (Name,Salary) VALUES('Max','$1200')";
      SqlCommand command = new SqlCommand(query, connection);
      try {
        connection.Open();
        command.ExecuteNonQuery();
        Console.WriteLine("Records Inserted Successfully");
      } catch (SqlException e) {
        Console.WriteLine("Error Generated. Details: " + e.ToString());
      } finally {
        connection.Close();
      }
    }
  }
}

Producción :

Records Inserted Successfully

El código anterior inserta datos en la tabla Person de la base de datos con el método de consulta simple en C#.

La clase SqlConnection crea una conexión con la base de datos. Toma la cadena de conexión como parámetro.

La clase SqlCommand crea un comando SQL que se ejecutará en la base de datos de SQL Server. Toma el objeto SqlConnection y la consulta SQL como parámetros.

La función connection.open() se utiliza para abrir la conexión con la base de datos para ejecutar alguna consulta. No podemos ejecutar ninguna consulta sin abrir la conexión a la base de datos.

Finalmente, la command.ExecuteNonQuery() función se usa para ejecutar nuestra consulta de inserción. La función command.ExecuteNonQuery() devuelve el número de filas afectadas por la consulta. Si ocurre un error, la función command.ExecuteNonQuery() devuelve -1.

Después de ejecutar la consulta, la conexión debe cerrarse con la función conexión.close().

Insertar SQL con el método de consulta parametrizado en C#

El método de consulta parametrizado se utiliza para insertar datos en una tabla de base de datos utilizando la consulta SQL insert con parámetros en C#. Especificamos parámetros alternativos para nuestros campos en la consulta de inserción y luego ingresamos datos en esos parámetros alternativos. Se recomienda este método porque protege nuestro código de las inyecciones de SQL. El siguiente ejemplo de código nos muestra cómo podemos ingresar datos en una tabla de base de datos con el método de consulta parametrizado en C#.

using System;
using System.Data.SqlClient;

namespace sql_insert {
  class Program {
    static void Main(string[] args) {
      string connectionString =
          "Data Source=.\SQLEXPRESS;Initial Catalog=ComputerShop;Integrated Security=True";
      SqlConnection connection = new SqlConnection(@connectionString);
      string query = "INSERT INTO Products (Name, Salary) VALUES(@Name, @Salary)";
      SqlCommand command = new SqlCommand(query, connection);

      command.Parameters.AddWithValue("@Name", "Max");
      command.Parameters.AddWithValue("@Salary", "$1200");

      try {
        connection.Open();
        command.ExecuteNonQuery();
        Console.WriteLine("Records Inserted Successfully");
      } catch (SqlException e) {
        Console.WriteLine("Error Generated. Details: " + e.ToString());
      } finally {
        connection.Close();
      }
    }
  }
}

Producción :

Records Inserted Successfully

El código anterior inserta datos en la tabla Person de la base de datos con el método de consulta parametrizado en C#. El resto del código es bastante similar al ejemplo anterior. La única diferencia es que esta vez no escribimos los valores dentro de la consulta insert; ingresamos valores por separado con la función command.Parameters.AddWithValue() en C#.

Muhammad Maisam Abbas avatar Muhammad Maisam Abbas avatar

Maisam is a highly skilled and motivated Data Scientist. He has over 4 years of experience with Python programming language. He loves solving complex problems and sharing his results on the internet.

LinkedIn

Artículo relacionado - Csharp Database