Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Datenbanken (https://www.delphipraxis.net/15-datenbanken/)
-   -   IBDAC - Datasets closed after INERT/UPDATE (https://www.delphipraxis.net/199659-ibdac-datasets-closed-after-inert-update.html)

lowmax_5 9. Feb 2019 16:42

Datenbank: Firebird • Version: 2.5 • Zugriff über: IBDAC

IBDAC - Datasets closed after INERT/UPDATE
 
Hallo,

nach einem Insert Update einer TIBCQuery sind andere Datasets der gleichen connection geschlossen.


Gibt es eine Möglichkeit dieses zu verhindern, oder bleibt nur die Möglichkeit alle benötigten Datasets wieder zu öffnen?

mkinzler 9. Feb 2019 16:49

AW: IBDAC - Datasets closed after INERT/UPDATE
 
Gesonderte Transaktionen verwenden.

lowmax_5 9. Feb 2019 19:10

AW: IBDAC - Datasets closed after INERT/UPDATE
 
Gab es dazu nicht auch eine Option in der Connection/Query, die dieses Verhalten verändert?

hoika 9. Feb 2019 20:13

AW: IBDAC - Datasets closed after INERT/UPDATE
 
Hallo,
welche Version von IBDAC?
Ich kann das nicht nachvollziehen.

lowmax_5 9. Feb 2019 21:08

AW: IBDAC - Datasets closed after INERT/UPDATE
 
IBDAC Version ist V6.2.8

Ich meinte, dass ich auf einer Schulung mal gehört hatte, dass es dazu eine Option in den Einstellungen gibt, um dieses Verhalten einzustellen. War aber wohl FireDAC...

Ich habe das Problem nun mit Messages an die jeweiligen Forms gelöst. Über die Messages werden die IBCQueries dann dann wieder geöffnet.

Vielen Dank an Alle!

haentschman 10. Feb 2019 07:13

AW: IBDAC - Datasets closed after INERT/UPDATE
 
Moin...8-)
Zitat:

nach einem Insert Update einer TIBCQuery sind andere Datasets der gleichen connection geschlossen.
Das gibt es nicht...hatte ich bei meinen Problemen mit Komponenten auch gesagt. :P Aber das beschriebene Verhalten kann ich nicht nachvollziehen. Sind die Queries definitiv geschlossen oder kannst du nur die Daten, welche du gerade eingetragen hast, bei anderen nicht sehen? Dann könnte "CachedUpdates" in Frage kommen. :gruebel:

Wenn das immer noch so ist, nehme die Connection mal runter, speichern und wieder drauf. Dann hast wieder eine Connection mit Standardeinstellungen. :thumb:

lowmax_5 10. Feb 2019 20:38

AW: IBDAC - Datasets closed after INERT/UPDATE
 
Nach einem Insert/Update (Mit Commit) waren bei mir bislang immer alle Datasets geschlossen, die auf der gleichen Connection/Transaction basierten. Danach war ein Refresh a la ibcquery.open notwendig.
Dieses war für mich immer das Standardverhalten... :wink:

PS: CachedUpdate steht bei mir auf False und die Transacttion steht auf iblReadCommitted,

haentschman 11. Feb 2019 05:59

AW: IBDAC - Datasets closed after INERT/UPDATE
 
Hallöle...8-)

Versuch mal https://www.devart.com/ibdac/docs/de....autoclose.htm
...auf False. (da die Query ein Dataset ist, sollte es dort zu finden sein)
oder
https://www.devart.com/ibdac/docs/wo...onnectmode.htm

hoika 11. Feb 2019 07:11

AW: IBDAC - Datasets closed after INERT/UPDATE
 
Hallo,
das würde aber den nur den aktuellen Cursor (Query) schließen,
nicht die anderen offenen Cursor (Queries) der gleichen Transaktion.

Neumann 11. Feb 2019 18:14

AW: IBDAC - Datasets closed after INERT/UPDATE
 
Bei IBDAC gibt es Autocommit, vielleicht ist das der Übeltäter. Würde wohl bei jedem Close der Query ausgelöst werden und alle anderen Queries mit gleicher Transaction mit schließen. Ich stelle das Autocommit in der Regel ab und benutze mehrere Transactions.

hoika 12. Feb 2019 16:41

AW: IBDAC - Datasets closed after INERT/UPDATE
 
Hallo,
Zitat:

alle anderen Queries mit gleicher Transaction
Das ist wohl die Lösung.
Ich erzeuge auch pro Query eine separate Transaktion und habe damit das Problem nicht.


Alle Zeitangaben in WEZ +1. Es ist jetzt 12:12 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz