溫馨提示×

c# param 如何正確使用參數(shù)化查詢

c#
小樊
83
2024-09-04 14:47:29
欄目: 編程語言

在C#中,使用參數(shù)化查詢可以提高安全性和性能

  1. 首先,引入必要的命名空間:
using System.Data;
using System.Data.SqlClient;
  1. 創(chuàng)建一個方法來執(zhí)行參數(shù)化查詢:
public void ExecuteParameterizedQuery()
{
    // 定義連接字符串
    string connectionString = "your_connection_string";

    // 定義SQL語句和參數(shù)
    string sqlCommandText = "INSERT INTO Users (Username, Email) VALUES (@username, @email)";

    // 創(chuàng)建一個SqlConnection對象
    using (SqlConnection connection = new SqlConnection(connectionString))
    {
        // 創(chuàng)建一個SqlCommand對象
        using (SqlCommand command = new SqlCommand(sqlCommandText, connection))
        {
            // 添加參數(shù)
            command.Parameters.Add("@username", SqlDbType.NVarChar).Value = "exampleUsername";
            command.Parameters.Add("@email", SqlDbType.NVarChar).Value = "exampleEmail@example.com";

            // 打開連接
            connection.Open();

            // 執(zhí)行參數(shù)化查詢
            int rowsAffected = command.ExecuteNonQuery();

            // 輸出結(jié)果
            Console.WriteLine($"Rows affected: {rowsAffected}");
        }
    }
}

在這個示例中,我們定義了一個名為ExecuteParameterizedQuery的方法。該方法使用參數(shù)化查詢將新記錄插入到名為Users的表中。我們使用SqlConnectionSqlCommand對象來執(zhí)行查詢,并使用command.Parameters.Add()方法添加參數(shù)。最后,我們調(diào)用command.ExecuteNonQuery()方法執(zhí)行查詢并返回受影響的行數(shù)。

請注意,為了避免SQL注入攻擊,請始終使用參數(shù)化查詢而不是直接將用戶輸入拼接到SQL語句中。

0