从访问数据库更新和删除行在 windows 表单应用程序中不起作用
Update and delete rows from an access database don't work in a windows forms app
我创建了一个具有访问权限的数据库,并在 Windows 表单应用程序中使用了该数据库。
我可以 select 并从数据库中插入行,但我无法删除和更新数据库。
我使用了以下代码。第一部分有效,第二部分无效。
if (!string.IsNullOrEmpty(this.txb_Box.Text) && !string.IsNullOrEmpty(this.txb_Teil.Text))
{
this.select = "SELECT * FROM Lagerhaltung WHERE BoxNr='"+ this.txb_Box.Text+"' AND Reklamation='"+this.txb_Teil+"'";
DbCommand command2 = connection2.CreateCommand();
command2.CommandText = this.select;
DbDataReader reader2 = command2.ExecuteReader();
if(!reader2.HasRows)
{
this.select = "INSERT INTO Lagerhaltung ( BoxNr, Reklamation, EingelagertAm, Artikelnr) VALUES ('" + this.txb_Box + "','"+this.txb_Teil.Text+"','" + this.lbl_Datum.Text + "', 'Test')";
}
}
"UPDATE Lagerhaltung SET AusgelagertAm='"+this.lbl_Datum.Text+"', Erledigt= True WHERE id like '"+data.id+"'";
"DELETE FROM Lagerhaltung WHERE id like '1'";
有人可以帮助我吗?
此致
JuRi-2020
我发现错误了。我没有使用
激活命令
command.ExecuteNonQuery();
这就是什么都没发生的原因。
我创建了一个具有访问权限的数据库,并在 Windows 表单应用程序中使用了该数据库。 我可以 select 并从数据库中插入行,但我无法删除和更新数据库。
我使用了以下代码。第一部分有效,第二部分无效。
if (!string.IsNullOrEmpty(this.txb_Box.Text) && !string.IsNullOrEmpty(this.txb_Teil.Text))
{
this.select = "SELECT * FROM Lagerhaltung WHERE BoxNr='"+ this.txb_Box.Text+"' AND Reklamation='"+this.txb_Teil+"'";
DbCommand command2 = connection2.CreateCommand();
command2.CommandText = this.select;
DbDataReader reader2 = command2.ExecuteReader();
if(!reader2.HasRows)
{
this.select = "INSERT INTO Lagerhaltung ( BoxNr, Reklamation, EingelagertAm, Artikelnr) VALUES ('" + this.txb_Box + "','"+this.txb_Teil.Text+"','" + this.lbl_Datum.Text + "', 'Test')";
}
}
"UPDATE Lagerhaltung SET AusgelagertAm='"+this.lbl_Datum.Text+"', Erledigt= True WHERE id like '"+data.id+"'";
"DELETE FROM Lagerhaltung WHERE id like '1'";
有人可以帮助我吗?
此致 JuRi-2020
我发现错误了。我没有使用
激活命令command.ExecuteNonQuery();
这就是什么都没发生的原因。