Advanced Workflow¶
DB-side constraints / data validation¶
[explain how (sadly) HRR can’t capture a DB constraint as a Haskell function for validation; only flat data type derivation]
Joins¶
[explain examples utilizing various kinds of joins in HRR]
Subqueries¶
[provide examples of subselects]
Union, Coalesce¶
[check if HRR supports these expressions, if so, give examples]
Case … when¶
[check if HRR supports that expression, if so, give an example]
Functions¶
[Say something about functions like e.g. char_length(), date_part(), …]
Housekeeping¶
[how to deal with housekeeping columns, like timestamps]
Fallback to HDBC¶
- [being based on HDBC, you can have a fallback when doing something
- with the DB that HRRs abstractions don’t cover, like e.g. select the last inserted PK or do INSERT … RETURNING *]
Bulk inserting / preparing statements¶
- [as before, this stuff has to be done one level below HRRs abstraction; HRR
- does not provide any mechanism for these cases]