• "Recently I came across a highly transactional DB with no FK's! The data integrity was managed by the front-end application."

    I've seen this also.  The ERP system was designed to be "generic" - any database platform, on any OS, for any customer.  As customers all have differing requriements, an FK for one might be detrimental to another, so all were left off.

    And then, as the "customer", we paid a fortune getting the application customised to check the data integrity we required.  A nice little earner, I must say.