Ermitteln der ID der eingefügten Zeile in C#
Beim Einfügen einer neuen Zeile in eine Datenbanktabelle ist es häufig erforderlich, die ID von zu erhalten der neu erstellte Datensatz. Allerdings konnte der in der Frage bereitgestellte Code die ID nicht korrekt abrufen.
Das Problem liegt in der Verwendung von ExecuteScalar(). Diese Methode ruft nur die erste Spalte der ersten Zeile des Ergebnissatzes ab, in diesem Fall ein ganzzahliger Wert von 0, da die Abfrage keine Zeilen zurückgibt.
Um die ID des eingefügten Elements korrekt zu erhalten Zeile, folgen Sie diesen Schritten:
Hier ist der überarbeitete Code:
MySqlCommand comm = connect.CreateCommand(); comm.CommandText = insertStatement; // Set the insert statement comm.ExecuteNonQuery(); // Execute the command long id = comm.LastInsertedId; // Get the ID of the inserted item
Dieser aktualisierte Code führt zuerst den Einfügebefehl aus und ruft dann die ID der neu eingefügten Zeile aus der LastInsertedId-Eigenschaft des Befehlsobjekts ab. Dadurch wird ordnungsgemäß der richtige ID-Wert für die weitere Verarbeitung abgerufen.
Das obige ist der detaillierte Inhalt vonWie rufe ich die ID einer eingefügten Zeile in C# ab?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!