metamodel-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Alberto Rodriguez <ardl...@gmail.com>
Subject Re: Problem executing string-format queries
Date Tue, 02 Sep 2014 15:12:39 GMT
Hi Hans,

You are right my code snippet was not complete, here it is:

val dataContext = DataContextFactory.createCsvDataContext(csvFile)
val dataSet = dataContext.executeQuery("""SELECT * FROM testdata.csv WHERE
name='rojo'""")

I have just tested the same with a JsonDataContext and getting the same
exception:

val fileName = "testdata.json"
val jsonFile = new File(s"test/resources/$fileName")
val dataContext = DataContextFactory.createJsonDataContext(jsonFile)
val dataSet = dataContext.executeQuery("""SELECT * FROM testdata.json WHERE
id='1'""")

I am afraid that you can only include 'WHERE' clauses within a executeQuery
method (with a string format query) using the JdbcDataContext.

Kind regards,

Alberto


2014-09-02 16:59 GMT+02:00 Hans Drexler <Hans.Drexler@humaninference.com>:

> Hi Alberto,
>
> I am not the biggest expert, but I think queries should work against all
> types of data contexts. That is one leading principle of MetaModel. From
> your code example, it seems the second code snippet (with the csv data
> context) is not complete. There is not a complete query in it. Can you
> double check your code and post? Maybe then we can help better.
>
> Kind regards,
>
> Hans Drexler
>
> -----Original Message-----
> From: Alberto Rodriguez [mailto:ardlema@gmail.com]
> Sent: Tuesday, September 02, 2014 4:54 PM
> To: dev@metamodel.incubator.apache.org
> Subject: Problem executing string-format queries
>
> Hi all,
>
> I have just come across your awesome library and am integrating it in my
> project.
>
> I have just written a couple of tests and noticed that I can execute a
> string-format query against a JdbcDataContext whereas I am getting an
> IllegarArgumentException ( Expression-based filters cannot be manually
> evaluated) when I execute the same query using a CsvDataContext.
>
> This is working fine:
>
> val dataContext = DataContextFactory.createJdbcDataContext(connection)
>         val dataSet = dataContext.executeQuery("""SELECT * FROM
> public.data_sources WHERE TYPE='rest'""")
>
> This is returning the exception:
>
>  val dataContext = DataContextFactory.createCsvDataContext(csvFile)
> WHERE name='rojo'""")
>
> Is there any way of executing string queries against all the datacontext
> types?
>
> Thank you!
>

Mime
  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message