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]