Why doesn't this category already exist?
We should (could, must?) have a list of Relational Antipatterns the same way we have Object Antipattern, stuff like:
And what about CategoryRelationalPattern?? I refuse to believe that RulesOfNormalization are all there is...
Beware of confusing relational systems with SQL systems. They are not the same! Though not specifically a volume of AntiPatterns, AnIntroductionToDatabaseSystems is probably the best reference on the RelationalModel, SQL DBMSes in general terms, and related issues. If you wish to delve deeper into the relational model, see TheThirdManifesto.
Yes, but what about common patterns found "in the field"? Is there a book about them? Or is all that can be said about RelationalPatterns already said by the NormalizationRules?? Or should we have different categories of patterns?
I am not aware of a book about common patterns "in the field", as it were, perhaps because it's difficult to find an appropriately pattern-oriented middle ground between the general rules of normalization and application-specific schemas, such as General Ledger, Billing System, Inventory, Accounts Payable, and so on. However, a book of these, combined with patterns where they can be found, would indeed be useful -- especially for practitioners starting out in data modeling and database implementation. Perhaps I shall write it!
I has already been done: TheDataModelResourceBook
The above are not objective or solidly proven "anti" patterns. Perhaps CategoryRelationalControversy? is a better name.
Why they are not objective or solidly proven "anti" patterns? can you provide me with an example of an objective or solidly proven "anti" pattern? what can we do to make them objective and solid?
{As far as the "thin" table debate, I thought it was generally agreed that each could effectively be made views of the other if our tools were powerful enough such that it's not a hard dichotomy. The issue is over what to do with existing tools. (My contention was that current tools favor wider tables, and going against this tends to make for more work.) --top}
It's perhaps worth noting that "relational algebra patterns" makes little sense, or at least no more sense than "arithmetic patterns". "True relational database" patterns have yet to be discovered, because true relational database systems are still relatively rare, and those that exist are mainly obsolete, in development, or experimental. It will take time for true relational systems to become widespread in production settings.
See DatabaseBestPractices, RelationalPatterns