在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
方法執行批量插入操作。
注意:在實際應用中,你可能需要根據實際情況調整連接字符串和表名。