当我使用下面的代码循环迭代两次,我得到错误消息作为“variables名称@ projectName1”已经被声明。variables名称必须在查询批处理或存储过程中是唯一的。 并重置datagridview中以及表中的表的所有值。 其实我想通过select单元格来更新DataGridView的forms本身,它也应该反映在数据库中。
private void btnUpdate_Click(object sender,EventArgs e) { sqlConnection con = Helper.getconnection(); con.open(); sqlCommand cmd = new sqlCommand(); cmd.Connection = con; string myCmd = string.Empty; foreach (DataGridViewRow myDgrow in dataGridView2.Rows) { myCmd = "Update Details set ProjectName='" + myDgrow.Cells["ProjectName"].Value + "',Description = '" + myDgrow.Cells["Description"].Value + "',DateStarted='" + myDgrow.Cells["DateStarted"].Value + "',TeamSize='" + myDgrow.Cells["TeamSize"].Value + "',Manager='" + myDgrow.Cells["Manager"].Value + "'"; cmd.Parameters.AddWithValue("@projectName1",myDgrow.Cells["ProjectName"].Value); cmd.Parameters.AddWithValue("@Description1",myDgrow.Cells["Description"].Value); cmd.Parameters.AddWithValue("@DateStarted1",myDgrow.Cells["DateStarted"].Value); cmd.Parameters.AddWithValue("@TeamSize1",myDgrow.Cells["TeamSize"].Value); cmd.Parameters.AddWithValue("@Manager1",myDgrow.Cells["Manager"].Value); cmd.CommandText = myCmd; cmd.ExecuteNonQuery(); dataGridView2.Update(); myCmd = string.Empty; } DataTable details = new DataTable(); sqlDataAdapter da = new sqlDataAdapter(); try { da.Update(details); } catch (Exception exceptionObj) { MessageBox.Show(exceptionObj.Message.ToString()); } }
检测到C#无法访问的代码
自动打开谷歌浏览器,单击button,并closures铬C#WinForms
并不是所有的代码path都返回值,而我返回的东西
当DialogResult为否时阻止窗体closures
Windows窗体文本框:select和插入位置
您正在使用foreach循环,并且每次将参数添加到相同的命令。 每次在循环中迭代时清除参数,或者每次创建一个新的命令。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。