Delphi 10.3 + FireDAC + PostgreSQL UID parameter + DA 9.6.113

Hi,

We try to open a query with UID parameter and the database system gives operator does not exist: uuid = character varying.
Probably is caused by the parameter type settings in uDAFireDACDriver.

Best regards.

Hi,

what datatype is used for this field in Schema Modeler, String/WideString?
if you specify valid datatype, will it work?

can you provide your DDL script for this table?
you can drop email to support@ if this info is private.

We 've got this issue when we have a table with primary key with UUID type. If we set a dynamic where for this field to some UID value (if I set the constant type as datGUID, the server will receive this parameter type as datGUID else if I don’t set this parameter then it’s seen as datWideString), that value are appearing correct on server side, but it doesn’t override the parameter $1 of SQL with this value. For any other types it work fine. In data modeler the field type is datGUID.

Hi,

We managed to solve the problem:
-on client side DynamicWhere needs data type for constant expression (if server is with zeos driver you don’t need it)
-on server side in the connection string you must include GUIDEndian=Big parameter if you are using PostgreSQL and FIreDAC driver

Best regards.

Thanks for this. As an example, with FireDAC, your query should use look like this:

SELECT serial_number FROM “&table_name” WHERE ml_uuid = { fn CONVERT(:ml_uuid, uuid) }