MySql Letzte Einfüge-ID, Connector .net

8

Ich verwende den MySql Connector .net, und ich muss die Einfüge-ID abrufen, die von der letzten Abfrage generiert wurde. Nun nehme ich an, dass der Rückgabewert von MySqlHelper.ExecuteNonQuery die letzte Einfüge-ID sein sollte, aber es gibt nur 1 zurück.

Der Code, den ich verwende, ist:

%Vor%

Allerdings ist insertID immer 1. Ich habe versucht, eine MySql-Verbindung zu erstellen und manuell zu öffnen / zu schließen, was zu demselben Verhalten führte.

    
Splatbang 15.12.2011, 09:30
quelle

4 Antworten

1

1 ist die Anzahl der Datensätze, die durch die Abfrage hier nur eine Zeile eingefügt wird, so dass 1 zurückgibt

Um die ID der eingefügten Zeile zu erhalten, müssen Sie scope_identity() in sqlserver und LAST_INSERT_ID() in MySql

verwenden     
Nighil 15.12.2011, 09:36
quelle
74

Verwenden Sie einfach das Feld LastInsertedId

%Vor%     
Cioxideru 24.02.2013 22:48
quelle
3

Versuchen Sie, diese Abfrage zu verwenden, um die letzte eingefügte ID zu erhalten -

%Vor%

Führen Sie anschließend die DbCommand.ExecuteReader-Methode aus, um IDataReader -

zu erhalten %Vor%

... und Informationen vom Leser erhalten -

%Vor%

... vergiss nicht, den Leser zu schließen; -)

    
Devart 15.12.2011 09:43
quelle
2

Ich hatte das gleiche Problem, und nach einigen Tests habe ich herausgefunden, dass das Problem anscheinend die Verbindungsmethode ist; Sie verwenden eine Verbindungszeichenfolge.

Dies ist natürlich, um die Wiederverwendung des automatischen Verbindungspools zu nutzen, aber in diesem Fall gab es mir Schwierigkeiten.

Die endgültige Lösung für mich besteht darin, eine neue Verbindung zu erstellen, die Einfügeabfrage auszuführen und dann das last_insert_id () auszuführen. Auf der selben Verbindung.

Ohne die gleiche Verbindung zu verwenden, kann last_insert_id () etwas zurückgeben, ich weiß nicht warum, aber denke mal, es verliert den Überblick, da es verschiedene Verbindungen sein können.

Beispiel:

%Vor%

Ich hoffe, das hilft jemandem!

    
Snorvarg 17.09.2013 20:52
quelle

Tags und Links