PQclass++ connecting Alaska Xbase++ with PostgreSQL
PQclass++ communicates with any PostgreSQL Server.
The class is based on the C-API of PostgreSQL.
All tables are opened as table objects and are compatible with XClass++ table objects.
The class is not limited to a specific version of PostgreSQL. Only the appropriate client DLLs must be installed:
The shipped PostgreSQL DLLs are 32bit and support PostgreSQL from version 12.0.
libpq.dll
libssl-1_1.dll
libcrypto-1_1.dll
PQclass++ features:
The tables need not to be modified by Alaska Upsize Tool.
But a PRIMARAY KEY must exist für UPDATE and DELETE
PQclass++ supports schemata
simple table listings provide nearly "live data", except for INSERT and DELETE from other applications.
Therefore the SQL has to re-executed
Support of ENUM data type
PQclass++ consists of several classes:
dsPQconnection
Class to setup a connection to a PostgreSQL Server. Login, transaction and global settings are implemented.
dsPQselect
Class for SQL queries. The data is provided by the PostgreSQL server and handled by C interface.
Methods provide navigation and managaing of data. Every Xbase++ workarea function is mapped to a method.
dsDebuglog
Class to log all SQL statements. Can be switched on/off at runtime.
dsMemoryTable
Class to handle an array with dataobjects. All methods are equal with dsPQselect
CXP helpers.dll
Set of functions and classes for use with Xbase++ CXP pages.
UPDATE and DELETE require a primarykey.
Every UPDATE, INSERT or DELETE will reexecute the query to refresh the data.
PQclass++ works with Xbase++ 2.00 and above.
PostgreSQL
You find all information and downloads about PostgreSQL on www.postgresql.org
In any case take a look into the documentation.
Important: PostgreSQL is casesensitiv, table and colum names. PostgreSQL recommands to only use lower case.
Keep in mind:
PostgreSQL resultsets are always a copy of the data at the moment of execution. They never reflect any changes by any user afterwards.
This behaviour differs from DBF tables which always reflect 'live' data.