我收到Dictionary<string, string>
并希望将其值转发给SqlParameter
内的数据库。这甚至可能吗?这是我做到这一点的方式,并且我收到了一个列名称与表定义不匹配的错误。ADO.NET向SQL参数插入多个值
SqlParameter param = new SqlParameter();
param.ParameterName = "@Values";
var sb = new StringBuilder();
foreach (var item in data)
{
sb.Append("'" + item.Value + "', ");
}
param.Value = sb.ToString().TrimEnd(',');
string insertString = $"insert into {tableName} values (@Values)";
SqlCommand command = new SqlCommand(insertString, connection);
command.Parameters.Add(param);
command.ExecuteNonQuery();
是的,你可以在服务器上使用*表值参数*和在C#中的*数据表*请参阅http://stackoverflow.com/questions/10409576/ pass-table-valued-parameter-using-ado-net –