Re: Case-sensitivity of connection string parameters - Mailing list pgsql-odbc

From Mateusz Loskot
Subject Re: Case-sensitivity of connection string parameters
Date
Msg-id CABUeae-ADZtjPBG73yhscMU0r3Cmtqv=7KkiHKzPgr-L2K2vYA@mail.gmail.com
Whole thread Raw
In response to Re: Case-sensitivity of connection string parameters  (Adrian Klaver <adrian.klaver@aklaver.com>)
List pgsql-odbc
On 10 May 2016 at 16:40, Adrian Klaver <adrian.klaver@aklaver.com> wrote:
> On 05/10/2016 06:52 AM, Mateusz Loskot wrote:
>>
>> On 10 May 2016 at 15:26, Inoue, Hiroshi <h-inoue@dream.email.ne.jp> wrote:
>>>
>>> On 2016/05/10 16:56, Mateusz Loskot wrote:
>>>>
>>>>
>>>> I use the psqlODBC 9.2.1 with unixODBC 2.2.14 on Ubuntu 14.04.
>>>> Should I expect names of connection string parameters to be
>>>> case-sensitive?
>>>>
>>>> For instance, if I try DSN-less connection with the following connection
>>>> string passed to the ODBC API call SQLDriverConnect:
>>>>
>>>> "Driver={PostgreSQL
>>>> ANSI};Server=127.0.0.1;Database=test;UID=test;PWD=test;"
>>>>
>>>> I get this error:
>>>>
>>>> [unixODBC][Driver Manager]Data source name not found, and no default
>>>> driver specified
>>>
>>>
>>>
>>> What rejects the connection is unixODBC driver manager not psqlodbc
>>> driver.
>>> Newer version of unixODBC may allow "Driver=....".
>>
>>
>> I see, though, confusingly, in the same environment unixODBC
>> accepts  "Driver=" for MySQL connection.
>> That is why I suspected psqlODBC.
>
>
> So what does the MySQL connection look like in its entirety?

Driver=MySQL;Server=localhost;Database=nanodbc_tests;User=root;Password=;Option=3;


Sample Travis CI build job where this MySQL connection string is
successfully used:
https://travis-ci.org/lexicalunit/nanodbc/jobs/128260733

Sample job where PostgreSQL connection string with capitalised Driver=
is failing:
https://travis-ci.org/lexicalunit/nanodbc/jobs/128260734

and PostgreSQL job worked after changing to DRIVER=
https://travis-ci.org/lexicalunit/nanodbc/jobs/129121683

> Also what are the *.ini file entries for the respective drivers?

All .ini files are left as installed by Ubuntu 14.04 packages

$ cat /etc/odbc.ini

$ cat /etc/odbcinst.ini

[SQLite]
Description = SQLite ODBC Driver
Driver = /usr/lib/odbc/libsqliteodbc.so
Setup = /usr/lib/odbc/libsqliteodbc.so
UsageCount = 1

[SQLite3]
Description = SQLite3 ODBC Driver
Driver = /usr/lib/odbc/libsqlite3odbc.so
Setup = /usr/lib/odbc/libsqlite3odbc.so
UsageCount = 1

[PostgreSQL ANSI]
Description = PostgreSQL ODBC driver (ANSI version)
Driver = psqlodbca.so
Setup = libodbcpsqlS.so
Debug = 0
CommLog = 1
UsageCount = 2

[PostgreSQL Unicode]
Description = PostgreSQL ODBC driver (Unicode version)
Driver = psqlodbcw.so
Setup = libodbcpsqlS.so
Debug = 0
CommLog = 1
UsageCount = 2


Best regards,
--
Mateusz Loskot, http://mateusz.loskot.net


pgsql-odbc by date:

Previous
From: Nick Gorham
Date:
Subject: Re: Case-sensitivity of connection string parameters
Next
From: "Tsunakawa, Takayuki"
Date:
Subject: Re: PostgreSQL: SQLSetPos fails with SetPos update return error.