我使用以下代码删除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 OleDbParameter("@ID",OleDbType.Integer, @ID));
foreach (DataRow dro in dt.GetChanges().Rows)
{
if (dro.RowState == DataRowState.Deleted)
{
con1.Open();
delCmd.ExecuteNonQuery();
con1.Close();
}
}
答案 0 :(得分:0)
您没有指定正确的ID。您需要将参数添加到循环中的命令中。
答案 1 :(得分:0)
使用Delete方法删除行。这将标记在表适配器上使用Update时要删除的行。您只是从集合中删除行;不是来自数据库。