使用VB.Net
我想获取所有datagrid单元格值,然后插入table1。
代码
cmd = New SqlCommand("insert into table1 values('" & DataGrid.Rows(0).Cells(0).Value & "', '" & DataGrid.Rows(0).Cells(1).Value & "', '" & DataGrid.Rows(0).Cells(2).Value & "', '" & DataGrid.Rows(0).Cells(3).Value & "')", con)
cmd.ExecuteNonQuery()
上面的代码是插入第一行datagrid单元格值,但我想插入所有datagrid单元格值
如何修改我的代码以获取所有datagrid单元格值。
答案 0 :(得分:1)
坚持现有代码,尽管存在缺陷(明确查找:SQL Injection)
你可以做这样的事情:
For Each row As DataGridViewRow in dataGrid.Rows
cmd = New SqlCommand("insert into table1 values('" & row.Cells(0).Value & "', '" & row.Cells(1).Value & "', '" & row.Cells(2).Value & "', '" & row.Cells(3).Value & "')", con)
cmd.ExecuteNonQuery()
Next
可以做出许多改进,但这回答了你的问题:
答案 1 :(得分:0)
首先:使用参数
避免SQL注入然后:遍历所有行并插入它们
伪代码:
foreach(var row in DataGid.Rows)
{
insert();
}