Delphi-PRAXiS
Seite 3 von 3     123   

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Datenbanken (https://www.delphipraxis.net/15-datenbanken/)
-   -   Delphi Gleichzeitiger Zugriff auf eine "nicht-echte-Datenbank"? (https://www.delphipraxis.net/22353-gleichzeitiger-zugriff-auf-eine-nicht-echte-datenbank.html)

Domo Sokrat 19. Aug 2004 07:18

Re: Gleichzeitiger Zugriff auf eine "nicht-echte-Datenb
 
Hi Schnitzel!

Bissi spät, aber ich hoffe, Du bist noch an Hilfe interessiert... Ich arbeite momentan ebenfalls mit den ZEOS 6.1.5 stable (incl. Patch #1) und Firebird 1.5.1 (z. Z. embedded).

Dein Problem mit dieser Exception kenne ich. Bei mir wird sie ebenfalls beim Disconnect einer TZConnection ausgelöst. Und jetzt kommt's: Aber nur dann, wenn zuvor eine Stored Procedure mit ExecProc ausgeführt wurde, die keine Werte zurückgibt (z. B. die SP ADD_EMP_PROJ der Employee-Beispieldatenbank von IB/FB). Mit Stored Procedures, die Werte zurückliefern gibt's hier keine Probleme.

Nun hab' ich zwei Workarounds anzubieten:

1) Der "Elegante"
Führe StoredProcs, die keine Werte zurückliefern doch einfach in einem TZQuery über das EXECUTE PROCEDURE Statement aus (ExecSQL!) und vergiss für diesen Fall die Komponente TZStoredProc. Mit einem TZReadOnlyQuery müsste es auch klappen, hab's aber bis dato noch nicht probiert.

2) Der "Holzhammer"
Wenn die Datenbank nach Auftreten der Exception (Fehler -901) nochmals disconnectet wird, dann wird die Verbindung zur DB ohne Fehler gelöst. Man packt also das Disconnect in einen Try-Except-Block und führt beim Auftreten der Exception das Disconnect nochmals aus. Ich bin mit dieser Lösung zwar nicht ganz zufrieden, weil ich nicht weiß, was da in welchen falschen Hals kommt, aber es funzt.


Alle Zeitangaben in WEZ +1. Es ist jetzt 14:24 Uhr.
Seite 3 von 3     123   

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