Not too bad, but that makes sense if I have a tool that shows me the native sql generated by the query.  or better yet, I write a native sql statement (say a query) and it reverse engineers it into the typesafe syntax you have in your API.

honestly, this:

From<users> u = query.from(users.table);
  Join<permissions> p = fromUser.join(permissions.
table)
  p.on( eq( u.get(users.id), p.get(permissions.userId) ) );

seems a little busy and difficult to "swallow"...


On Thu, Nov 26, 2009 at 12:36 PM, Gavin King <gavin.king@gmail.com> wrote:
On Thu, Nov 26, 2009 at 3:16 PM, Marcus Smedman <marcus@smedman.org> wrote:

> Regarding the seam-sql I added a Drop (to speed up my small tests), Alter
> (to add foreign keys) and a Join (a bit messy when/if using aliases) to try
> to understand how Gavin had did the other stuff. There’s a lot of stuff I
> don’t fully understand… (is a join an Expression for example?).

Join is probably a subclass of From:

  From<users> u = query.from(users.table);
  Join<permissions> p = fromUser.join(permissions.table)
  p.on( eq( u.get(users.id), p.get(permissions.userId) ) );

Does that make sense?



--