AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Datenbanken Delphi Von INSERT generierte Daten erfassen
Thema durchsuchen
Ansicht
Themen-Optionen

Von INSERT generierte Daten erfassen

Ein Thema von WorstNightmare · begonnen am 7. Aug 2009 · letzter Beitrag vom 7. Aug 2009
Antwort Antwort
Benutzerbild von anse
anse

Registriert seit: 30. Okt 2006
Ort: Neuenkirchen
198 Beiträge
 
Delphi 11 Alexandria
 
#1

Re: Von INSERT generierte Daten erfassen

  Alt 7. Aug 2009, 23:31
Sorry hab überlesen dass du für mehrere Query-Threads dieselbe Verbindung benutzt - hört sich merkwürdig an, funktioniert das ohne Abstürze und sonstige Sonderfälle?

Jedenfalls wird das Abfragen der LAST_INSERT_ID() damit zum Glücksspiel - die kann bei gleichem Timing die ID eines anderen Threads zurückliefern, in so einem Fall, dend der Server arbeitet die Queries nun mal thread-los ab, wenn du eine einzige Verbindung benutzt:

1. Thread A: INSERT
2. Thread A: SELECT LAST_INSERT_ID()
** Alles ok, phew.. **
3. Thread B: INSERT
4. Thread C: INSERT
5. Thread B: SELECT LAST_INSERT_ID()
6. Thread C: SELECT LAST_INSERT_ID()
** Böses durcheinander **

Besser wäre es für jede Query eine eigene Verbindung aufzubauen. Hört sich verschwenderisch an, und eigentlich braucht man daß bei INSERTs nicht, weil das eh schnell genug ist. Außerdem ist die relevante Tabelle eh gelockt für die Zeit des INSERTs was multi-Thread-INSERTs unterm Strich dann doch wieder eins nach dem anderen abarbeitet. Also, Empfehlung: Keine Threads für INSERTs verwenden, hat keinen Vorteil, macht deinen Code nur komplizierter.
Ansgar Becker
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 08:04 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz