请教一下,我通过C#的datagridview查询的数据,想实现用鼠标的划定选择后,通过删除按钮来删除,对应数据表的内容,并点击保存的按钮,能保存到数据库里面,以下是我从网上摘的一段删除代码,再下面是保存按钮代码 ,请帮完善一下,多谢;
private void btndel_Click(object sender, EventArgs e)
{
if (.........)
{
MessageBox.Show("请选中要删除的数据!");
}
else
{
conn = new SqlConnection("server=192.168.100.247;database=Whmesinfo;user=sa;password=whyy@2021");
conn.Open();
string delete = "delete from w_Qctable1 where.........";
SqlCommand comm = new SqlCommand(delete, conn);//Command对象对数据库进行增删查改
if (Convert.ToInt32(comm.ExecuteNonQuery()) > 0)//判断ExecuteNonQuery方法返回的参数是否大于0,大于0表示删除成功
{
MessageBox.Show("删除成功!");
}
else
{
MessageBox.Show("删除失败!");
}
conn.Close();//关闭连接
}
private void btnsave_Click(object sender, EventArgs e)
{
conn = new SqlConnection("server=192.168.100.247;database=Whmesinfo;user=sa;password=whyy@2021");
conn.Open();
try
{
DataTable changedt = dt.GetChanges(); //将发生变化的内容,存储在另一个表内;
foreach (DataRow dr in changedt.Rows)
{
string strsql = string.Empty;
if (dr.RowState == System.Data.DataRowState.Modified)//修改操作
{
strsql = @"UPDATE [dbo].[w_Qctable1]
SET [productcode] = '" + dr["productcode"].ToString() + @"'
,[productname] = '" + dr["productname"].ToString() + @"'
,[batchNo] = '" + dr["batchNo"].ToString() + @"'
,[reportNo] = '" + dr["reportNo"].ToString() + @"'
,[process] = '" + dr["process"].ToString() + @"'
,[mstr] = '" + dr["mstr"].ToString() + @"'
,[DT] = '" + dr["DT"].ToString() + @"'
,[gl] = '" + dr["gl"].ToString() + @"'
,[ph] = '" + dr["ph"].ToString() + @"'
,[rd] = '" + dr["rd"].ToString() + @"'
,[meoh] = '" + dr["meoh"].ToString() + @"'
,[PE] = '" + dr["PE"].ToString() + @"'
,[result] = '" + dr["result"].ToString() + @"'
,[note] = '" + dr["note"].ToString() + @"'
,[date] = '" + Convert.ToDateTime(dr["date"]) + @"'
where id = '" + dr["id"].ToString() + "'";
}
else if (dr.RowState == System.Data.DataRowState.Added)//增加操作
{
strsql = @"INSERT INTO [dbo].[w_Qctable1]
([productcode],[productname],[batchNo],[reportNo],[process],[mstr],[DT],[gl],[ph],[rd],[meoh],[PE],[result],[note],[date],[id])
values
('" + dr["productcode"].ToString() + @"'
,'" + dr["productname"].ToString() + @"'
,'" + dr["batchNo"].ToString() + @"'
,'" + dr["reportNo"].ToString() + @"'
,'" + dr["process"].ToString() + @"'
,'" + dr["mstr"].ToString() + @"'
,'" + dr["DT"].ToString() + @"'
,'" + dr["gl"].ToString() + @"'
,'" + dr["ph"].ToString() + @"'
,'" + dr["rd"].ToString() + @"'
,'" + dr["meoh"].ToString() + @"'
,'" + dr["PE"].ToString() + @"'
,'" + dr["result"].ToString() + @"'
,'" + dr["note"].ToString() + @"'
,'" + Convert.ToDateTime(dr["date"].ToString()) + @"'
,'" + Guid.NewGuid().ToString() + @"')";
}
SqlCommand comm = new SqlCommand(strsql, conn);
comm.ExecuteNonQuery();
}
MessageBox.Show("更新成功");
}
catch (Exception ex)
{
//MessageBox.Show(ex.Message);
MessageBox.Show("请输入修改内容后,再点保存");
}
finally
{
conn.Close();
}
}
datagridview.SelectedRows就是选中的行