I have no control over the format of the query coming through the ODBC
driver.

That is done automatically as far as I know by the[QLIK BI tool that is
leveraging the ODBC driver
to try to read data.

Are you suggesting it is QLIK adding the extra quotes that is causing the
problem with the H2 driver
on the Ignite side?

On Thu, Sep 6, 2018 at 11:07 AM Ilya Kasnacheev <ilya.kasnach...@gmail.com>
wrote:

> Hello!
>
> SELECT COUNT(*) FROM ""PUBLIC"".CITY <-- I don't think you need any quotes
> around PUBLIC.
>
> Regards,
> Ilya.
> --
> Ilya Kasnacheev
>
>
> чт, 6 сент. 2018 г. в 16:59, limabean <drobin1...@gmail.com>:
>
>> Scenario:
>> 64-bit ODBC driver cannot read data created from the Java Thin driver.
>>
>> Ignite 2.6.
>> Running a single node server on Centos to test this.
>>
>> First:
>> Using Intellij to remotely run the sample code from the Ignite Getting
>> started page here on SQL:
>> First Ignite SQL Application
>> https://apacheignite.readme.io/docs/getting-started
>>
>> This all works fine.  Tables created, data inserted, data read.  All as
>> expected.
>>
>> Next:
>> Using the ODBC 64-bit driver from Windows 10 to connect to the still
>> running
>> Ignite server to read the same tables (City, Person).   This does not
>> work.
>>
>> The ODBC driver appears to be able to get meta data - it gets the table
>> names from the PUBLIC schema and it understands the fields / field counts
>> in
>> each table.  However, the ODBC driver is unable to perform any select
>> operations on the tables. See the following stack trace as an example of
>> the
>> errors I am seeing:
>>
>>
>> [13:30:19]   ^-- default [initSize=256.0 MiB, maxSize=6.3 GiB,
>> persistenceEnabled=false]
>> [13:33:09,424][SEVERE][client-connector-#45][OdbcRequestHandler] Failed to
>> execute SQL query [reqId=0, req=OdbcQueryExecuteRequest [schema=PUBLIC,
>> sqlQry=SELECT COUNT(*) FROM ""PUBLIC"".CITY, timeout=0, args=[]]]
>> class org.apache.ignite.internal.processors.query.IgniteSQLException:
>> Failed
>> to parse query. Table  not found; SQL statement:
>> SELECT COUNT(*) FROM ""PUBLIC"".CITY [42102-195]
>>         at
>> org.apache.ignite.internal.processors.query.h2.IgniteH2Indexing.prepareStatementAndCaches(IgniteH2Indexing.java:2026)
>>
>>         at
>> org.apache.ignite.internal.processors.query.h2.IgniteH2Indexing.parseAndSplit(IgniteH2Indexing.java:1796)
>>
>>         at
>> org.apache.ignite.internal.processors.query.h2.IgniteH2Indexing.querySqlFields(IgniteH2Indexing.java:1652)
>>
>>
>> -----------------------
>>
>> I have tried various things on the Java side to make the Public schema
>> explicit, such as this:
>> conn = DriverManager.getConnection("jdbc:ignite:thin://10.60.1.101/PUBLIC");
>>
>> // conn.setSchema("PUBLIC");
>>
>> but this does not help with the ODBC problem.  The Java stuff still works
>> fine.  Select statements in Java can be written like this and they still
>> work:
>>
>>  stmt.executeQuery("SELECT p.name, c.name " +
>>                                  " FROM PUBLIC.Person p, City c " +
>>                                  " WHERE p.city_id = c.id"))
>>
>>
>> Any advice on how this should be done (sample code?) is much appreciated.
>> Thank you.
>>
>>
>>
>> --
>> Sent from: http://apache-ignite-users.70518.x6.nabble.com/
>>
>

Reply via email to