【发布时间】:2010-02-03 07:02:50
【问题描述】:
页面上有一个带有 Checkbox 字段的 GridView。并且在同一页面上有一个按钮。有一个字段与 sql 中的复选框相关。有什么简单的方法来更新sql吗?不是逐行。
最好的问候,
【问题讨论】:
标签: asp.net sql-server gridview
页面上有一个带有 Checkbox 字段的 GridView。并且在同一页面上有一个按钮。有一个字段与 sql 中的复选框相关。有什么简单的方法来更新sql吗?不是逐行。
最好的问候,
【问题讨论】:
标签: asp.net sql-server gridview
您可以使用以下 sn-p 将所有选中复选框的值作为逗号分隔的字符串返回:
string values = string.Empty;
foreach (ListItem item in checkboxList.Items)
{
if (item.Selected)
values += item.Value + ",";
}
您可以在 SQL 中按如下方式使用该值:
string sql = String.Format("UPDATE table SET selected = 1 WHERE ID IN ({0})", values );
【讨论】:
如果您单独编辑每一行,恐怕没有其他方法可以逐行更新,或者您可以对每组值进行批量更新,例如:
Update MyTable Set checkbox=1 WHERE Id IN(list of ids);
Update MyTable Set checkbox=0 WHERE Id IN(list of ids);
如果您想为显示的所有行更新相同的值,您可以这样做:
Update MyTable set checkbox=value WHERE your whare cluase of showing fields
【讨论】: