Minor Release.
ADDED
-
Int8 support as Bcd (PostgreSQL [numeric] field). They should work transparently
to the end user as they were Int8 fields. This wasn't on the previous
version because there are many bugs related to Bcd fields on Delphi
6; they were fixed on Update Packs 1 and 2. We think however that with
took extra care in the implementation to avoid raising such bugs even
on plain Delphi 6 (without service packs). We urge you, however, to update
your Delphi distribution to the latest service pack to ensure everything
will work ok. Kylix (specially v1) seems to suffer from the same bugs;
please update it too. Int8 as Bcd is the new default mapping for Int8
fields. Please use the Int8Mode driver option if you want to change
it.
FIXED - Under certain conditions,
a failed database login could lead to a driver exception. This bug was
introdeced on v0.96.
|
Fixes and a few enhancements.
ADDED
-
A new installation package is avaible to make it easier to install the
pgExpress Driver. It's aviable at the Vita Voom Software's website. It
will install the driver and also create entries on the dbxdriver/dbxconnections
files automatically. You should however tune the [PGEConnection] entry
it creates to meet your configuration. The regular zip package is also
available.
ADDED
- A small demo (PGEDemo) is added to the distribution.
The demo will compile on both Kylix and
Delphi.
ADDED
- Arrays support by default now.
This is a delicated issue; arrays in PostgreSQL always have variable length,
regardless of what is declared in it's table definition (that is for documentation
only). Thus, arrays are supported
if mapped as strings.
ADDED
- Better int8 variable support. Unhappyly,
dbExpress does not provide int8 support. This made the driver misbehave
with tables that use int8 types (including int8 serials such as
those generated by phpPgAdmin, PgAdmin II andthe alike). Now the int8
type is support by default as a String type, but it can also be mapped
as Int4 or ignored (please refer to the docs).
ADDED
- Better documentation about the
special params supported by the pgExpress driver (MaspUnknownAsString,
ArrayAsString, etc.)
ADDED
- new libpq interface library from PostgreSQL 7.21 (for both Windows and
Linux).
FIXED - Fixed a bug where select queries using parameters
(TCustomClientDataset.Params or TCustomSQLDataset.Params descendants)
would not run properly.
FIXED - Fixed int8 support (including
new option in dbxdrivers.ini).
FIXED - Fixed 'Format '%s' invalid
or incompatible with argument' when demo limit of 50 updates/inserts/deletes
per transaction reached.
|
Major revision. Many internal changes have been made to support Stored
Procedures and other features. The driver was rewritten in about 60%.
ADDED - Stored Procedures support.
Since PostgreSQL currently has no real support for stored procudures,
they are emulated through Functions (create by using "create
function" statments). Functions that return "opaque" can't
be supported because they can only be called by triggers or rules. Functions
that return "SETOF" types (datasets) will be supported probably
on the next version.
ADDED
- Now the driver will read extra,
non-standard options from the dbxdrivers.ini file. Those options include
"TypesCachingMode", "TextAsBlob" and "MapUnkownAsString".
ADDED
- A new version of the libpq library was added, and
the new PQescapeString and PQescapeBytea and PQfreeNotify functions are
now available.
ADDED - Added TypeMappings caching. The PostgreSQL native
types information will be cached on the driver level (default), the connection
level or the cursor level. PostgreSQL requires a types lookup due to it's
dynamic typing nature. This option reduces traffic to the server and makes
the driver faster. As said, this option defaults to "driver"
(meaning that types will be cached only once per session) and can be changed
by setting the dbxdrivers.ini "TypesCachingMode" option.
For more details about TypeMappings caching, please refer to the driver
documentation.
For more information about the PostgreSQL types mechanism, please refer
to the PostgreSQL Manuals.
ADDED
- "TextAsBlob" option. This dbxdrivers.ini setting will
make the text fields to be mapped as BLOBs. That can make you support
PostgreSQL 'text' fields larger then 32Kb.
ADDED
- "MapUnknownAsString" option. This dbxdrivers.ini setting will
make unknown types to be mapped as strings. Virtually all PostgreSQL types
can be supported using this option. This option defaults to true on the
driver but can be set to False if you don't like it.
ADDED
- The registered version of the driver now supports int2vector and oidvector
types, and maps them as integer arrays.
ADDED
- Database server checking. Now the driver will enforce that PostgreSQL
7.1 or superior is being used. The driver is not compatible with older
servers.
ADDED
- Portuguese translation of the driver. If you want to contribute with
a translation, please email
us.
ADDED - Callback function support. Now the pgExpress driver
will work properly with TSQLMonitors.
ADDED - Support for HostName parameter in dbxconnections.ini
file.
CHANGED - Now the driver
will use the interface library specified by the "VendorLib"
parameter in the dbxdrivers file. If this is not set, defaults to "libpq.dll"
on windows systems, or "libpq.so" on linux.
CHANGED - MANY internal changes
and optimizations. The driver should be more flexible then ever.
CHANGED - Made driver more
compatible with other Borland drivers.
FIXED - Fixed a bug where the path
environment would not be properly detected, causing the library to not
be located.
FIXED - Fixed a few blob bugs.
FIXED - Fixed a small fldVARBYTES
and fldBYTES bug (please document things better, Borland ;-) ).
|
Maintence release.
ADDED - Kylix support. pgExpress
is now also avaiable under Linux.
CHANGED - Updated the libpq.dll
interface library to one from a PostgreSQL 7.2 CVS snapshot. This version
fixes a bug where a query with more then 8191 bytes would kill the database
connection. This was actually a PostgreSQL bug, not pgExpress.
FIXED - Fixed a bug where a query
with more then 8191 bytes would kill the database connection (read above).
FIXED - Fixed a bug where the path
environment would not be properly detected, causing the library to not
be located. This error occurs only on a very few systems and was very
difficult to detect.
FIXED - Fixed "LIBPQ library
[%s] was not found". - argument '%s' was not being expanded.
|