【问题标题】:Devexpress c# how to insert MultiSelectedItems(checkboxrowselect) from grid to DatabaseDevexpress c#如何将MultiSelectedItems(checkboxrowselect)从网格插入到数据库
【发布时间】:2015-08-10 08:45:43
【问题描述】:

我有绑定到数据集的 gridview 并尝试将 multipleselectedrows(CheckBoxRowSelect) 插入到我的数据库中,但每次我都失败了。我尝试了许多不同的方法,但没有结果。我的代码用于插入:

int[] selectedrows = gridView1.GetSelectedRows();
for (int i = 0; i < selectedrows.Length; i++)
{
   string sql = "INSERT INTO dbo.TABLE1(COL1,COL2,COL3) SELECT " + gridView1.GetRowCellValue(i, "COL4") + "," + gridView1.GetRowCellValue(i, "COL5") + ",'" + gridView1.GetRowCellValue(i, "COL6")" FROM dbo.TABLE2 WHERE COL4=" + gridView1.GetRowCellValue(i, "COL4") + " AND COL5=" + gridView1.GetRowCellValue(i, "COL5") + "";

   connection(sql); // sqlconnection and sqlcommand metod
}

【问题讨论】:

  • 调试后这些变量里面是什么?
  • 我无法理解你所说的变量是什么意思。如果你的意思是 gridview 单元格值;我得到了字符串格式值和 int 格式值
  • 如果您在建立实际连接之前设置断点,您应该查看正确的值是否进入您的 SQL 语句/正在生成的 SQL 语句。这样您就可以查明错误是与您的 getRowCellValue-Calls 还是与您生成的 SQL 有关。顺便提一句。你应该阅读 SQL 注入。
  • 一切似乎都很好,当尝试执行查询时它失败了。我几乎对那个我犯错无法弄清楚的问题发疯了
  • @enigmad87 你能显示你正在尝试执行的查询吗?

标签: c# winforms gridview devexpress


【解决方案1】:

您的代码错误,因为您不是从所选行中读取值。

这应该可行:

int[] selectedrows = gridView1.GetSelectedRows();
foreach (int i in selectedrows)
{
   string sql = "INSERT INTO dbo.TABLE1(COL1,COL2,COL3) SELECT " + gridView1.GetRowCellValue(i, "COL4") + "," + gridView1.GetRowCellValue(i, "COL5") + ",'" + gridView1.GetRowCellValue(i, "COL6")" FROM dbo.TABLE2 WHERE COL4=" + gridView1.GetRowCellValue(i, "COL4") + " AND COL5=" + gridView1.GetRowCellValue(i, "COL5") + "";

   connection(sql); // sqlconnection and sqlcommand metod
}

【讨论】:

  • 我很久以前就解决了 :) 我的错误是一个假人 :) 反正只是使用了 gridview1.GetRowCellValue(selectedrows[i],"col4") 谢谢老兄的建议
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-03-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多