I appreciate the time you've taken to respond,
CountZero. I have some comments (as usual :-) )
1. While what you say is true in most cases, I can think of several examples where this doesn't apply.
UNIONs,
ALTER TABLE (while rare), and invocation of stored procedures in some DBs would fall into this category. Also, vendor-specific commands like
SHOW TABLE STATUS in MySQL would require arbitrary SQL statements. If
DBIx::Class can do this using the standard syntax, I'd be thrilled to learn how.
2.
eval would work and it's a good suggestion, but it's inelegant and really, error handling should be built in.
DBIx::Class seems well-written, at least from the outside, so I was hoping this was something on which I could rely.
3. Some DBs don't support views and this seems like a very hackish workaround for what should be a simple and common task. I did, however, discover that I can do most of what I want from
DBIx::Class::Manual::Joining. I'm just not sure how to make a ResultSet that does this by default.