首頁 > 資料庫 > mysql教程 > 如何將 SQL 參數與 IN 子句和字串清單一起使用?

如何將 SQL 參數與 IN 子句和字串清單一起使用?

Linda Hamilton
發布: 2025-01-03 14:28:39
原創
474 人瀏覽過

How to Use SQL Parameters with an IN Clause and a List of Strings?

使用SQL 參數對字串清單執行IN 查詢

您的程式碼嘗試使用List執行IN 語句作為@settings SQL參數的參數。但是,此方法無效,因為它需要支援的資料類型進行綁定。

要使用字串清單執行IN 查詢,您可以按照以下步驟操作:

  1. 建立字串查詢範本: 建構一個字串查詢,其中包含清單中每個元素的佔位符。例如:
string sql = "SELECT dscr FROM system_settings WHERE setting IN ({0})";
登入後複製
  1. 將清單轉換為參數數組:建立參數名稱數組,其中每個名稱對應於查詢中的佔位符範本。
string[] paramArray = settingList.Select((x, i) => "@settings" + i).ToArray();
登入後複製
  1. 格式化查詢: 將查詢範本中的佔位符替換為參數名稱。
cmd.CommandText = string.Format(sql, string.Join(",", paramArray));
登入後複製
  1. 將參數新增至指令: 建立並新增SqlParameter對於清單中的每個元素,使用對應的參數名稱和value.
for (int i = 0; i < settingList.Count; ++i)
{
    cmd.Parameters.Add(new SqlParameter("@settings" + i, settingList[i]));
}
登入後複製

執行以下步驟,您可以使用SqlCommand參數安全地對字串清單執行 IN 查詢。此方法涉及為清單中的每個字串建立自訂參數名稱,並為 SqlParameter 指定適當的資料類型。

以上是如何將 SQL 參數與 IN 子句和字串清單一起使用?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板