Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Datenbanken (https://www.delphipraxis.net/15-datenbanken/)
-   -   Delphi UniDAC + Firebird + Repeatable Read (https://www.delphipraxis.net/177870-unidac-firebird-repeatable-read.html)

Nersgatt 3. Dez 2013 07:24

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

UniDAC + Firebird + Repeatable Read
 
Moin,

ich setze Firebird 2.5 zusammen mit DevArt 4.6 ein.
Scheinbar verwendet DevArt in der Konstellation standardmäßig das Isolationslevel Read Commited. Ich bräuchte nun aber Repeatable Read. Entweder für eine einzelne Transaktion oder auch für die gesamte Connection. Das wäre mir egal.

Ich kann mit TUniConnection.StartTransaction(ilRepeatableRead) eigentlich das Isolationslevel angeben. Allerdings hat das keine Auswirkung. Das deckt sich auch mit der Doku unter http://www.devart.com/unidac/docs/in...nsaction().htm was vermuten lässt, dass Devart/Firebird das so nicht unterstützt.

Bei der Connection selber habe ich keine Möglichkeit gefunden, den Isolationslevel anzugeben.

Gibt es eine Möglichkeit, das zu bewerstelligen?

Danke!
Jens

jobo 3. Dez 2013 09:04

AW: UniDAC + Firebird + Repeatable Read
 
Bist Du sicher, dass Du das brauchst?
SingleUser DB?
Multi Connections?

mkinzler 3. Dez 2013 10:33

AW: UniDAC + Firebird + Repeatable Read
 
Und über eine Transaktions-Komponente?

Nersgatt 3. Dez 2013 10:37

AW: UniDAC + Firebird + Repeatable Read
 
Das macht leider keinen Unterschied, ob ich nun mit Connection.StartTransaction die Transaktion starte oder TUniTransaction benutze. Bei TUniTransaction gibt es zwar auch die Property IsolationLevel, aber verhält sich genauso wie oben geschrieben.
Ich sehe eigentlich meine einzige Chance darin, der ganzen Connection zu sagen, sie soll alles als ReadCommitted behandeln. Nur wie. :?:

baumina 3. Dez 2013 10:51

AW: UniDAC + Firebird + Repeatable Read
 
Kann es denn sein, dass Firebird diesen Isolationslevel gar nicht unterstützt?

http://www.firebirdsql.org/refdocs/l...set-trans.html

haentschman 3. Dez 2013 10:52

AW: UniDAC + Firebird + Repeatable Read
 
:zwinker: Doch, doch...
http://www.firebirdsql.org/manual/is...nsactions.html

Eine Suche ghat folgendes zu Tage gefördert... Vieleicht ja ein anderer Ansatz :zwinker:
http://forums.devart.com/viewtopic.php?t=3532
Zitat:

I tried the Interbase/Firebird and it works as expected.

mkinzler 3. Dez 2013 11:24

AW: UniDAC + Firebird + Repeatable Read
 
Zitat:

Zitat von baumina (Beitrag 1238331)
Kann es denn sein, dass Firebird diesen Isolationslevel gar nicht unterstützt?

http://www.firebirdsql.org/refdocs/l...set-trans.html

Doch
http://www.firebirdsql.org/manual/is...nsactions.html

Nersgatt 3. Dez 2013 12:02

AW: UniDAC + Firebird + Repeatable Read
 
Zitat:

Zitat von haentschman (Beitrag 1238332)
:zwinker: Doch, doch...
http://www.firebirdsql.org/manual/is...nsactions.html

Eine Suche ghat folgendes zu Tage gefördert... Vieleicht ja ein anderer Ansatz :zwinker:

Das sind ja die DBExpress-Treiber, das ist ein anderes Produkt. :wink:
Prinzipell suche ich aber sowas, wie dort beschrieben wird. Ich muss doch der Connection irgendwie als Parameter den IsolationLevel mitgeben können. Leider hat die TUniConnction nicht wie die TConnection von Emba keine Params-Auflistung. Oder ich finde sie nicht.


Alle Zeitangaben in WEZ +1. Es ist jetzt 15:49 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