我通过c#从mysql数据库表中绑定了一个网格。有没有办法在insert语句中显示所显示的项目?
例如:如果我绑定一个20行的网格,我需要在insert语句中获取所有这些,我可以保存为.sql文件并在另一个db中运行它。
你的帮助非常有帮助。
答案 0 :(得分:0)
你可以通过循环遍历网格行并获取每个单元格的值来实现它,但这将是很难的方法。最好让DB完成工作,让DB使用select语句直接执行insert语句,如下所示:
http://www.sqlteam.com/article/using-select-to-insert-records
这是获取select语句结果并插入另一个表的常规方法。
编辑我的同事比我更聪明,想出如何从Viewstate获取底层DataTable并按如下方式使用它(在VB中 - 您需要将其翻译为C#):
Dim tblRanked AS System.Data.DataTable = ViewState("tblRanked")
For Each row As DataRow In tblRanked.Rows
db.ExecuteNonQuery("usp_AddRankingForUser", loginId, row("RequestID"), count)
'updates the depthead field for later use
Next
编辑 - 已添加</ em>
这是另一个类似于你所要求的选项,代码片段明确地展示了如何遍历数据网格中的行以获取值......