在C#中,使用参数化查询可以提高安全性和性能
using System.Data; using System.Data.SqlClient; public void ExecuteParameterizedQuery() { // 定义连接字符串 string connectionString = "your_connection_string"; // 定义SQL语句和参数 string sqlCommandText = "INSERT INTO Users (Username, Email) VALUES (@username, @email)"; // 创建一个SqlConnection对象 using (SqlConnection connection = new SqlConnection(connectionString)) { // 创建一个SqlCommand对象 using (SqlCommand command = new SqlCommand(sqlCommandText, connection)) { // 添加参数 command.Parameters.Add("@username", SqlDbType.NVarChar).Value = "exampleUsername"; command.Parameters.Add("@email", SqlDbType.NVarChar).Value = "exampleEmail@example.com"; // 打开连接 connection.Open(); // 执行参数化查询 int rowsAffected = command.ExecuteNonQuery(); // 输出结果 Console.WriteLine($"Rows affected: {rowsAffected}"); } } } 在这个示例中,我们定义了一个名为ExecuteParameterizedQuery的方法。该方法使用参数化查询将新记录插入到名为Users的表中。我们使用SqlConnection和SqlCommand对象来执行查询,并使用command.Parameters.Add()方法添加参数。最后,我们调用command.ExecuteNonQuery()方法执行查询并返回受影响的行数。
请注意,为了避免SQL注入攻击,请始终使用参数化查询而不是直接将用户输入拼接到SQL语句中。