【发布时间】:2020-06-14 02:08:40
【问题描述】:
我尝试在我的数据库中迭代一个以上的 INSERT,而 ASPX/VB 我从 gridview 中获取值:
For Each row As GridViewRow In gv_membri.Rows
Dim ChkBoxRows As CheckBox = CType(row.FindControl("cb_membri"), CheckBox)
If ChkBoxRows.Checked Then
Dim select_udp_membri As New MySqlParameter("@udp_membri", MySqlDbType.Int16, 11)
select_udp_membri.Value = CInt(row.Cells(1).Text)
cmd1.Parameters.Add(select_udp_membri)
con.Open()
Try
cmd1.ExecuteNonQuery()
Catch ex As Exception
lblerr0.Text = "INSERT udp_user ERROR: " + ex.Message
Exit For
End Try
cmd1.Parameters.Clear()
con.Close()
End If
Next
第一次从 gridview 的复选框中获取值并且工作正常,但第二次返回此错误: 命令执行过程中遇到致命错误。
有人可以帮我吗?
【问题讨论】:
-
我不明白你为什么每次都打开和关闭连接。你也可以显示 cmd1
-
正如@nbk 所述,在每次循环迭代时打开和关闭该连接可能是您的问题的一部分。也许把它移到你的循环之外。除此之外,你能给使用cmd1的命令文本吗
-
不断添加和删除命令参数也是错误的。您应该添加一次参数,然后在每次迭代时设置其
Value。