Autor Beitrag
Realnub
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 37

Win XP
VS 2005
BeitragVerfasst: Mo 21.04.08 13:04 
hallo, ich speichere einen datensatz in einer mysql datenbank. die id wird per auto increment quasi automatisch ermittelt, gibt es eine einfache möglichkeit, die id zurückzubekommen wenn das insert ausgeführt wird? oder muss ich den weg über ein select gehen bzw. die id manuell vergeben.
JüTho
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 2021
Erhaltene Danke: 6

Win XP Prof
C# 2.0 (#D für NET 2.0, dazu Firebird); früher Delphi 5 und Delphi 2005 Pro
BeitragVerfasst: Mo 21.04.08 14:30 
MySql bietet laut Dokumentation u.a. folgende Möglichkeit:
ausblenden SQL-Anweisung
1:
2:
INSERT INTO tbl (auto,text) VALUES(NULL,'text');
SELECT LAST_INSERT_ID();

Vielleicht bietet Dein DbProvider einen direkten Weg. Da aber ein Insert über einen "normalen" DbCommand ausgeführt wird und dieser für beliebige Arten von Sql-Befehlen genutzt wird, halte ich das für unwahrscheinlich.
Außerdem habe ich in einem anderen Forum den Hinweis auf MySqlCommand.LastInsertedId gefunden, siehe Doku zum MySql Connector.

Jürgen
Realnub Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 37

Win XP
VS 2005
BeitragVerfasst: Di 22.04.08 17:55 
Danke

das funktioniert perfekt und ja ich habe den Wink mit dem Zaunpfahl verstanden :)