在C#中生成大量插入语句的最佳方法是使用参数化查询和批量插入。这种方法可以提高性能并减少数据库服务器的负担。
以下是一个使用ADO.NET的示例:
using System;
using System.Data;
using System.Data.SqlClient;
class Program
{
static void Main()
{
string connectionString = "your_connection_string";
string insertQuery = "INSERT INTO your_table (column1, column2, column3) VALUES (@value1, @value2, @value3)";
using (SqlConnection connection = new SqlConnection(connectionString))
{
connection.Open();
using (SqlCommand command = new SqlCommand(insertQuery, connection))
{
command.Parameters.Add("@value1", SqlDbType.NVarChar, 50);
command.Parameters.Add("@value2", SqlDbType.Int);
command.Parameters.Add("@value3", SqlDbType.DateTime);
for (int i = 0; i < 1000; i++)
{
command.Parameters["@value1"].Value = "value1";
command.Parameters["@value2"].Value = 123;
command.Parameters["@value3"].Value = DateTime.Now;
command.ExecuteNonQuery();
}
}
}
}
}
在这个示例中,我们创建了一个插入查询,并使用参数化查询来避免SQL注入攻击。然后,我们在循环中执行该查询1000次,以插入1000行数据。
使用这种方法可以提高插入性能,并减少数据库服务器的负担。同时,它还可以避免SQL注入攻击,并提高代码的可读性和可维护性。
领取专属 10元无门槛券
手把手带您无忧上云