Definign a Table-Per-Type (TPT) inheritance Will break normalization RRS feed

  • Question

  • I am working on building a database for an asset_Management system. i have a general Asset table which stores all the common columns, and since an IP_address is a mule-values attribute for some Asset i define a separate table for it maintaining them.

    Currently I see these points:-

    1. I have introduced a redundant AssetTypeID column in the base Asset table, so I can know the asset type without having to join tables, but This might break normalization.

    2. Although storing the IP in a single table will guarantee uniqueness of IPs among all asset (which is valid in my case), but in the above architecture , I cannot control (atleast on the database level) which asset should have IP, which asset should not have IP and which asset can/cannot have multiple IPs.

    So is there a way to improve my architecture to handle these two points.

    Thanks in advance for any help.

    Friday, June 28, 2013 9:25 AM

All replies

  • 1) In general don't fret about normalization too much, the whole field of deformalizing for performance is valid

    2) Look at your diagram it appears flawed as Vehicles (spelling) don't typically have IP Addresses. So I think you need IPAsset that derives from Asset 


    Monday, July 8, 2013 5:33 AM