Wenn ich meinen Code im Debugger ausführen und ich meine Maus über die Parameter schweben, haben sie die richtigen Werte in ihnen. Es aktualisiert meine Datenbank einfach nicht, aber wenn ich die Abfrage kopiere und in die Datenbank lege, funktioniert sie ohne Probleme.einfache Update-Abfrage funktioniert nicht, aber wenn ich es in die Datenbank selbst setzen funktioniert es
Die Parameterwerte sind:
id = 7
omschrijving = douche muntjes
prijs = 0,5
catagorie = faciliteiten
ich die Verbindung geprüft Tring durch eine INSERT-Abfrage verwenden und dass Datensätze zu meiner Datenbank hinzufügt. Und es gibt eine ID mit dem Wert 7 in der Datenbank.
Wenn ich eine Einfügeabfrage oder eine Löschabfrage über meinen C# -Code ausführen, funktioniert es, es ist nur die Update-Anweisung, die nicht funktioniert. Wenn jemand das Problem sieht, bitte hilf mir.
public static void wijzigprijs(int id, string omschrijving, decimal prijs, string catagorie)
{
try
{
try
{
OleDbConnection verbinding = new OleDbConnection(
@"Provider=Microsoft.ACE.OLEDB.12.0;
Data Source=..\..\..\La_Rustique.accdb;
Persist Security Info=False;");
verbinding.Open();
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
}
OleDbCommand query = new OleDbCommand();
query.CommandText = @"UPDATE prijslijst
SET omschrijving = @omschrijving,
prijs = @prijs,
catagorie = @catagorie
WHERE id = @id";
query.Parameters.Add(new OleDbParameter("@id", OleDbType.Integer));
query.Parameters["@id"].Value = id;
query.Parameters.Add(new OleDbParameter("@omschrijving", OleDbType.VarChar));
query.Parameters["@omschrijving"].Value = omschrijving;
query.Parameters.Add(new OleDbParameter("@prijs", OleDbType.Decimal));
query.Parameters["@prijs"].Value = prijs;
query.Parameters.Add(new OleDbParameter("@catagorie", OleDbType.VarChar));
query.Parameters["@catagorie"].Value = catagorie;
query.Connection = verbinding;
query.ExecuteNonQuery();
MessageBox.Show("succesvol gewijzigd");
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
}
finally
{
verbinding.Close();
}
}
Was sind die Parameterwerte? – 3615
id = 7, omschrijving = Dusche muntjes, prijs = 0,5, catagorie = faciliteiten –
Definieren Sie Ihre Befehlstyp query.CommandType = CommandType.Text und versuchen, Ihre Abfrage in einzelne Zeile 'query.CommandText = schreiben @ "UPDATE prijslijst SET omschrijving = @omschrijving, prijs = @prijs, catagorie = @catagorie WHERE id = @id"; ' – cagri