我有一个stored-procedure
接受五个参数并在表上执行更新
Update Table
Set field = @Field
Where col1= @Para1 and Col2=@Para and Col3=@Para3 and col4 =@aPara4
从用户的角度来看,您可以为所有条件参数选择多个值。例如,您可以在数据库表中选择 2 个需要匹配Col1的选项(需要作为@Para1传递)
所以我将所有选定的值存储在单独的列表中。
目前我正在使用 foreach 循环进行更新
foreach (var g in _list1)
{
foreach (var o in _list2)
{
foreach (var l in _list3)
{
foreach (var a in _list4)
{
UpdateData(g, o, l,a);
}
}
}
}
我确信这不是这样做的好方法,因为这将调用数据库调用的数量。有什么方法可以忽略循环并进行最少数量的 db 调用以达到相同的结果?
更新
我正在寻找其他方法Table-Valued Parameters