Thank you very much!
See below :
On 9/22/21 3:37 PM, Henning Follmann wrote:
On Wed, Sep 22, 2021 at 11:07:28AM +0200, Pierre Couderc wrote:
It is here I see it/them with:
odbcinst -q -d
but not with :
SQLHENV env;
SQLCHAR driver[256];
SQLCHAR attr[256];
SQLSMALLINT driver_ret;
SQLSMALLINT attr_ret;
SQLUSMALLINT direction;
SQLRETURN ret;
SQLAllocHandle(SQL_HANDLE_ENV, SQL_NULL_HANDLE, &env);
SQLSetEnvAttr(env, SQL_ATTR_ODBC_VERSION, (void *) SQL_OV_ODBC3, 0);
direction = SQL_FETCH_FIRST;
while(SQL_SUCCEEDED(ret = SQLDrivers(env, direction,
driver, sizeof(driver), &driver_ret,
attr, sizeof(attr), &attr_ret))) {
direction = SQL_FETCH_NEXT;
printf("%s - %s\n", driver, attr);
if (ret == SQL_SUCCESS_WITH_INFO) printf("\tdata truncation\n");
}
What do I miss...?
The ability to clearly describe your problem!
Sorry I tried to be minimum... But here are more details?
What did you do?
I assume you wrote some c code.
Yes, this code above is written in c (c++ in fact but I have simplified).
Did you compile it? And if so, how?
Yes, with default tools (gcc under debian bulllseye linked with libodbc)
You installed odbcunix I assume.
How did you configure it?
Correctly.
What is the output of "odbcinst -q -d"?
Correct :
[PostgreSQL ANSI]
[PostgreSQL Unicode]
What did you expect?
That my c program produces the same list
What did not work?
Include logs, error messages.
Logs and error messages : none (This is the heart of the problem)
What did you do to solve your problem so far?
I have reduced my problem - which is much more complex - to the simplest
test prograam.
And I ask for help, as I have no more idea after many hours.