Hello!

Please try using public (lower case) as schema, since quotes force case
sensitivity.

Regards,
-- 
Ilya Kasnacheev


чт, 6 сент. 2018 г. в 18:25, David Robinson <drobin1...@gmail.com>:

> 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