Discussion of open issues, suggestions and bugs regarding UniDAC (Universal Data Access Components) for Delphi, C++Builder, Lazarus (and FPC)
-
rant801601
- Posts: 18
- Joined: Wed 25 Jan 2006 09:28
Post
by rant801601 » Sat 24 Jan 2009 11:16
Is this proper behavior for Query. When Query.Open I get error message
Active transaction required for using FetchAll = False mode.
From this I can see I have to do Connection.StartTransaction before Query.Open and it works. Can you please explain why. Is this Postgre specific behaviour ?
-
Plash
- Devart Team
- Posts: 2844
- Joined: Wed 10 May 2006 07:09
Post
by Plash » Thu 29 Jan 2009 10:24
This is specific to PostgreSQL server. It does not support FetchAll = False mode without an active transaction.
-
rant801601
- Posts: 18
- Joined: Wed 25 Jan 2006 09:28
Post
by rant801601 » Thu 29 Jan 2009 10:41
This specific behavior means I can't use same code for different databases. I think this could be handled internally. If I would like to migrate a large project 300+ units to UniDAC (dbExpress + Oracle) it will break almost all code.
-
Plash
- Devart Team
- Posts: 2844
- Joined: Wed 10 May 2006 07:09
Post
by Plash » Fri 30 Jan 2009 11:51
We'll consider possibility to implement this feature in one of the next UniDAC versions.
-
rant801601
- Posts: 18
- Joined: Wed 25 Jan 2006 09:28
Post
by rant801601 » Fri 30 Jan 2009 13:43
Just to be sure I must ask you another question about memory usage. With UniDirectional=True Query I expect nothing is cached in client side. When testing with Firebird I don't see memory increase but with Postgre memory usage goes to 24 Mb (fetching 1 million records). Is there something else I must do ?
-
Challenger
- Devart Team
- Posts: 925
- Joined: Thu 17 Nov 2005 10:53
Post
by Challenger » Mon 09 Feb 2009 11:55
We could not reproduce the problem. We have answered you by mail.