cayenne-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Michael Gentry <mgen...@masslight.net>
Subject Re: Query using a join table
Date Wed, 09 Mar 2011 20:31:06 GMT
Hi Damon,

I was going to point you to using Expression.fromString() since you
already have a Map of values, but then I realized your Map was just
holding primary keys (or at least that's my assumption).  Typically in
Cayenne you don't map primary keys or even care about them for the
most part (you'd care more about objects, etc).  Can you tell us a bit
more about what you are trying to do?

Thanks,

mrg


On Wed, Mar 9, 2011 at 1:33 PM, Damon <milimber@gmail.com> wrote:
> I'm trying to perform a query using a join table.  I have read the documentation and
several websites.  Im stuck
>
> returns: List<Site>
>
> String sql = "SELECT site.* from site, siteservice WHERE " +
>                "site.id = siteservice.site_id AND " +
>                "state_id = $stateID AND " +
>                "siteservice.service_id = $serviceID";
>        SQLTemplate query = new SQLTemplate(Site.class, sql);
>        Map parameters = new HashMap();
>        parameters.put("stateID", stateId);
>        parameters.put("serviceID", serviceId);
>        query.setParameters(parameters);
>        return BaseContext.getThreadObjectContext().performQuery(query);
>
> Table siteservice contains:
> site_id
> service_id
>
> I can execute the query on the db and i get the results im expecting.  Is the SQLTemplate
the correct type to use? What direction should i take?
>
>
> Thanks for the help.

Mime
View raw message