在C#中,使用SqlParameter进行批量操作可以提高性能,因为它减少了与数据库的交互次数。以下是一个使用SqlParameter进行批量插入的示例:
首先,确保已安装System.Data.SqlClient命名空间。
using System.Data;
using System.Data.SqlClient;
然后,创建一个方法来执行批量插入操作:
public void BatchInsert(List<Employee> employees)
{
// 连接字符串,根据实际情况修改
string connectionString = "your_connection_string";
// 使用using语句确保数据库连接被正确关闭
using (SqlConnection connection = new SqlConnection(connectionString))
{
// 打开连接
connection.Open();
// 创建SQL命令
string sql = "INSERT INTO Employees (Name, Age, Department) VALUES (@Name, @Age, @Department)";
using (SqlCommand command = new SqlCommand(sql, connection))
{
// 为每个参数创建SqlParameter对象,并添加到命令中
foreach (Employee employee in employees)
{
SqlParameter parameter = command.CreateParameter();
parameter.ParameterName = "@Name";
parameter.Value = employee.Name;
command.Parameters.Add(parameter);
parameter = command.CreateParameter();
parameter.ParameterName = "@Age";
parameter.Value = employee.Age;
command.Parameters.Add(parameter);
parameter = command.CreateParameter();
parameter.ParameterName = "@Department";
parameter.Value = employee.Department;
command.Parameters.Add(parameter);
}
// 执行批量插入操作
command.ExecuteNonQuery();
}
}
}
在这个示例中,我们首先创建了一个BatchInsert
方法,该方法接受一个Employee
对象列表作为参数。然后,我们使用using
语句创建一个SqlConnection
对象,并打开连接。接下来,我们创建一个SqlCommand
对象,并为每个参数创建一个SqlParameter
对象,将参数值设置为员工对象的属性。最后,我们使用ExecuteNonQuery
方法执行批量插入操作。
注意:在实际应用中,你可能需要根据实际情况调整连接字符串和表名。