If you have groups of related tables, you can present a view and then use triggers to handle inserts and updates spanning multiple tables in the view. Well, you could, but MySQL's views are broken and don't allow you to attach rules or triggers to them (I hear this may change soon, but I'm not sure). Both Postgres and SQLite handle this correctly.
| [reply] |
__PACKAGE__->set_sql(Retrieve => <<'');
SELECT __ESSENTIAL__
FROM __TABLE__
WHERE %s
I think it's fairly obvious how to extend that to perform a join. Doing updates or inserts this way seems more difficult though. I don't think MySQL allows multiple statements from a single DBI call (e.g. $dbh->do('update foo; update bar')). Besides, it looks like the %s placeholders are too limited for that anyway.
I'm probably not telling you anything you didn't already know, but I thought I'd write down these hints anyway. Someone is bound to have a use for them :-) | [reply] [d/l] [select] |