Thread: bug in sqlGetInfo on Linux i386 platform

bug in sqlGetInfo on Linux i386 platform

From
Son Nguyen
Date:
Hi,
 
sqlGetInfo on SQL_DBMS_VER returns different string when I have the protocol setting in the odbc.ini file
 
1)  Here is the odbc.ini file that has entry Protocol which is set to 7.2, or 6.4.  The SQM_DBMS_VER string contains some other info.
[GOSALES1_PG_92]
Driver=/usr/pgsql-9.1/lib/psqlodbc.so
Description=Sample PostgreSQL DSN
Servername=vottdts26
Database=gosales1
Username=gosales1
Password=gosales1
Servertype=postgres
Port=5432
Protocol = 7.2
 
drv-mob:/uda/dev/nguyens/postgres> ./a.out
SQL_DBMS_NAME = PostgreSQL, StringLengthPtr = 10
SQL_DBMS_VER = PostgreSQL 9.2.1, compiled by Visual C++ build 1600, 64-bit, StringLengthPtr = 59
SQL_DRIVER_NAME = psqlodbcw.so, StringLengthPtr = 12
SQL_DRIVER_VER = 09.00.0310, StringLengthPtr = 10
 
 
2)  Here is the odbc.ini that Protocol entry is commented out.  The SQM_DBMS_VER string does not contain other info.
[GOSALES1_PG_92]
Driver=/usr/pgsql-9.1/lib/psqlodbc.so
Description=Sample PostgreSQL DSN
Servername=vottdts26
Database=gosales1
Username=gosales1
Password=gosales1
Servertype=postgres
Port=5432
;Protocol = 7.2
 
drv-mob:/uda/dev/nguyens/postgres> ./a.out
SQL_DBMS_NAME = PostgreSQL, StringLengthPtr = 10
SQL_DBMS_VER = 9.2.1, StringLengthPtr = 5
SQL_DRIVER_NAME = psqlodbcw.so, StringLengthPtr = 12
SQL_DRIVER_VER = 09.00.0310, StringLengthPtr = 10
 
Thanks
 
Son Nguyen
 
 
 
Attachment

Re: bug in sqlGetInfo on Linux i386 platform

From
"Inoue, Hiroshi"
Date:
Hi Son,

(2013/01/30 3:26), Son Nguyen wrote:
> Hi,
> sqlGetInfo on SQL_DBMS_VER returns different string when I have the
> protocol setting in the odbc.ini file
> 1)  Here is the odbc.ini file that has entry Protocol which is set to
> 7.2, or 6.4.

The effective values for *Protocol* are 6.2, 6.3, 6.4 or 7.4 and the
  default is 7.4. Setting the protocol to values other than 7.4 has
  little meaning for recent versions of PostgreSQL servers. In case
of old protocols the SQL_DBMS_VER string is simply the string which
'select version();' returns.

regards,
Hiroshi Inoue

 > The SQM_DBMS_VER string contains some other info.
> [GOSALES1_PG_92]
> Driver=/usr/pgsql-9.1/lib/psqlodbc.so
> Description=Sample PostgreSQL DSN
> Servername=vottdts26
> Database=gosales1
> Username=gosales1
> Password=gosales1
> Servertype=postgres
> Port=5432
> Protocol = 7.2
> drv-mob:/uda/dev/nguyens/postgres> ./a.out
> SQL_DBMS_NAME = PostgreSQL, StringLengthPtr = 10
> SQL_DBMS_VER = PostgreSQL 9.2.1, compiled by Visual C++ build 1600,
> 64-bit, StringLengthPtr = 59
> SQL_DRIVER_NAME = psqlodbcw.so, StringLengthPtr = 12
> SQL_DRIVER_VER = 09.00.0310, StringLengthPtr = 10
> 2)  Here is the odbc.ini that Protocol entry is commented out.  The
> SQM_DBMS_VER string does not contain other info.
> [GOSALES1_PG_92]
> Driver=/usr/pgsql-9.1/lib/psqlodbc.so
> Description=Sample PostgreSQL DSN
> Servername=vottdts26
> Database=gosales1
> Username=gosales1
> Password=gosales1
> Servertype=postgres
> Port=5432
> ;Protocol = 7.2
> drv-mob:/uda/dev/nguyens/postgres> ./a.out
> SQL_DBMS_NAME = PostgreSQL, StringLengthPtr = 10
> SQL_DBMS_VER = 9.2.1, StringLengthPtr = 5
> SQL_DRIVER_NAME = psqlodbcw.so, StringLengthPtr = 12
> SQL_DRIVER_VER = 09.00.0310, StringLengthPtr = 10
> Thanks
> Son Nguyen