Log In

Come Join Us!

Are you a
Computer / IT professional?
Join Tek-Tips Forums!
  • Talk With Other Members
  • Be Notified Of Responses
    To Your Posts
  • Keyword Search
  • One-Click Access To Your
    Favorite Forums
  • Automated Signatures
    On Your Posts
  • Best Of All, It's Free!
  • Students Click Here

*Tek-Tips's functionality depends on members receiving e-mail. By joining you are opting in to receive e-mail.

Posting Guidelines

Promoting, selling, recruiting, coursework and thesis posting is forbidden.

Students Click Here


inheritance in relational database

inheritance in relational database

inheritance in relational database


How i implement inheritance in tables on a relational database?
for example i have the members class that is a super class and it has only user name attribute.my child classes are:admin_users and other_users that derived from members super class.these child classes consists of password attribute
for that user.i want to know each work must be done: implement this hierarchy in one table in database or each class must has own table.

thanks a lot.

RE: inheritance in relational database

there are 3 ways to handle this
1. 1 table with a discriminator column
2. 1 base class User with a 1:1 FK to AdminUser and NormalUser tables
3. AdminUser table and NormalUser table. use 2 separate queries to lump them all together a "users" when needed.

If you only have a few unique columns between Admin and Normal users option 1 is your best bet. it's simple and easy to query. with this approach the subclass attributes are not required in the database.

if you want the subtype attributes to be required in the database option 2 is the way to go. it complicates queries, but an ORM should handle that for you.

option 3 is really only useful for legacy systems. you loose FK constraints and sql queries can become very complex/convoluted.

there may be other options, but these are 3 I have seen.

Jason Meckley
Specialty Bakers, Inc.

FAQ855-7190: Database Connection Management
FAQ732-7259: Keeping the UI responsive

Red Flag This Post

Please let us know here why this post is inappropriate. Reasons such as off-topic, duplicates, flames, illegal, vulgar, or students posting their homework.

Red Flag Submitted

Thank you for helping keep Tek-Tips Forums free from inappropriate posts.
The Tek-Tips staff will check this out and take appropriate action.

Reply To This Thread

Posting in the Tek-Tips forums is a member-only feature.

Click Here to join Tek-Tips and talk with other members! Already a Member? Login

Close Box

Join Tek-Tips® Today!

Join your peers on the Internet's largest technical computer professional community.
It's easy to join and it's free.

Here's Why Members Love Tek-Tips Forums:

Register now while it's still free!

Already a member? Close this window and log in.

Join Us             Close