C#删除数据表中的行
我使用以下代码删除数据表中的行:C#删除数据表中的行,c#,ms-access,datatable,C#,Ms Access,Datatable,我使用以下代码删除数据表中的行: if (x == "y" || x == "yes") { dt.Rows.RemoveAt(id); } 如何在MS Access中保存更改(删除行)? 我有这样的代码,但这不起作用 OleDbCommand delCmd = new OleDbCommand("DELETE FROM PERSONA WHERE ID=?",con1); delCmd.Parameters.Add(new OleD
if (x == "y" || x == "yes")
{
dt.Rows.RemoveAt(id);
}
如何在MS Access中保存更改(删除行)?
我有这样的代码,但这不起作用
OleDbCommand delCmd = new OleDbCommand("DELETE FROM PERSONA WHERE ID=?",con1);
delCmd.Parameters.Add(new OleDbParameter("@ID",OleDbType.Integer, @ID));
foreach (DataRow dro in dt.GetChanges().Rows)
{
if (dro.RowState == DataRowState.Deleted)
{
con1.Open();
delCmd.ExecuteNonQuery();
con1.Close();
}
}
您没有指定正确的ID。您需要将参数添加到循环中的命令。使用Delete方法删除行。这将在表适配器上使用Update时标记要删除的行。您只是从集合中删除行;不从数据库中删除。RemoveAt逐行删除索引,而不是idok,但当我使用delete方法删除行时,我无法查看这些行,因为C#给了我一个错误,无法查看删除的行,smth这样,如何处理?如何查看已删除的行?创建数据视图并应用筛选以查看将被删除的行。请参阅本文: