温馨提示×

如何在sqlparameter中使用数组

小樊
82
2024-07-01 19:11:38
栏目: 云计算

在使用SQLParameter时,如果需要传递一个数组作为参数,可以使用以下方法:

  1. 将数组转换为逗号分隔的字符串,然后将其作为参数传递。在SQL查询语句中使用IN关键字来匹配包含在该字符串中的值。

例如:

int[] ids = new int[] {1, 2, 3, 4};
string idString = string.Join(",", ids);

string query = "SELECT * FROM table WHERE id IN (@Ids)";
SqlCommand cmd = new SqlCommand(query, connection);
cmd.Parameters.AddWithValue("@Ids", idString);
  1. 使用循环为数组中的每个元素添加一个参数。

例如:

int[] ids = new int[] {1, 2, 3, 4};
string query = "SELECT * FROM table WHERE id IN (" + string.Join(",", ids.Select((s, i) => "@Id" + i)) + ")";
SqlCommand cmd = new SqlCommand(query, connection);

for (int i = 0; i < ids.Length; i++)
{
    cmd.Parameters.AddWithValue("@Id" + i, ids[i]);
}

这样就可以将数组作为参数传递给SQL查询语句。

0