ERLEDIGT
NEIN
NEIN
ANTWORTEN
7
7
ZUGRIFFE
557
557
EMPFEHLEN
-
Ich mache einen Insert auf irgendeine Tabelle.
Die Tabelle selbst hat eine ID-Spalte, welche eindeutig die ID's vergibt.
Nach dem Insert Befehl möchte ich die vergebene ID auslesen.
geht das irgendwie, außer mit einem anschließenden Select-Befehl?
Mfg
Markus Gruber
-
Wennst uns jetzt noch sagst welche Datenbank du benutzt ....
-
Naja, sollte eigentlich egal sein, oder?
weil ich immer mit .ExecuteNonQuery() die Anweisung schicke.
Aber trotzdem:
- MSSQL Server
- MySQL
- Access
sollte wenn möglich bei allen 3 funktionieren.
-
Code :
1
SELECT @@IDENTITY as lastid ...
Das funktioniert sicher bei MSSQL und bei MySQL 4 (obs bei 3 auch schon geht, weiß ich nicht, hab ich auch nicht getestet). Unter Access wird diese Variante wohl nicht gehen ...
Wenn Du es mit einem nachfolgenden Select machst, solltest die Tabelle allerdings locken, immerhin könnte es ja sein, dass bereits ein weiterer Datensatz in der Zwischenzeit eingefügt wurde. Das Locken hat dann allerdings auch wieder Nachteile (Performance etc.)
-
Hi
Unter Access wüßte ich es nicht . Meiner Meinung nach geht das da nur mit anschließendem SELECT Befehl !
Wenn jemand was anderes weiß dann heraus damit !
DarkGreetinx LordDeath"Gott ist tot! Gott bleibt tot! Und wir haben ihn getötet." - Friedrich Nietzsche
-
Naja, andere Richtung geht auch:
1) Lock auf die Table setzen
2) Letzte ID auslesen und 1 addieren
3) Insert schreiben
4) Lock aufheben
-
Bei MySQL kann man die letzte eingefügte ID mit LAST_INSERT_ID() ermitteln.
Chris
-
Ich danke für die Antworten, aber das ist alles so "kompliziert".
Ich mein jetzt nur programmiertechnisch.
Der Befehl ExecuteNonQuery() liefert mir die Anzahl der Reihen zurück, welche mit diesem Insert Befehl( meistens 1) zurück. Damit fang ich nichts an und da dachte ich dass es eine vernünftige Antwort gibt. Da hab ic mich wohl getäuscht.
Mit den oben genannten Vorschlägen, bleibt das ganze System nun langsam.
Ähnliche Themen
-
Datenbanken
Von Tagamoga im Forum JavaAntworten: 2Letzter Beitrag: 04.05.09, 13:52 -
Datenbanken
Von Sircoly im Forum C/C++Antworten: 2Letzter Beitrag: 29.04.06, 17:34 -
XML und Datenbanken
Von mkoeni1 im Forum XML TechnologienAntworten: 0Letzter Beitrag: 18.02.06, 22:45 -
Datenbanken
Von zumpe im Forum PHPAntworten: 4Letzter Beitrag: 16.12.04, 13:00 -
2 Datenbanken
Von akkie im Forum Relationale DatenbanksystemeAntworten: 2Letzter Beitrag: 19.05.03, 21:23





Zitieren
Login





