RSS Forums RSS

Database Design Question

Please support our MySQL advertiser: Programming Forums
Reply
Posts: 37
Reputation: Tom Tolleson is an unknown quantity at this point 
Solved Threads: 0
Tom Tolleson's Avatar
Tom Tolleson Tom Tolleson is offline Offline
Light Poster

Database Design Question

  #1  
Dec 4th, 2008
Hi!

I've got a table of, let's say, widgets. Each has a unique id (primary key) and a few other attributes such as

widgetid (unique, number)
widget_name (string)
widget_price (varchar)
widget_color (string)

BUT, for each widget, I also want to list other widgets (that are listed in the same table) that are similar to each widget, and list them by their unique id.

So, would I create a foreign key to another table of related widgets, or just have additional fields in this table for

related_widget_1
related_widget_2
related_widget_3

and have the widgetids listed in those fields?

Seems their must be a better way to do this.

Thanks!

THT
Last edited by Tom Tolleson : Dec 4th, 2008 at 3:30 pm.
AddThis Social Bookmark Button
Reply With Quote  
Posts: 663
Reputation: darkagn has a spectacular aura about darkagn has a spectacular aura about 
Solved Threads: 88
darkagn's Avatar
darkagn darkagn is offline Offline
Practically a Master Poster

Re: Database Design Question

  #2  
Dec 4th, 2008
I would have another table, related_wigets, with the following structure:

widgetid (number, PK, FK)
related_widgetid (number, PK, FK)

When someone wants to relate widget with widgetid = 1 to widget with widgetid = 2, do an insert like so:
  1. INSERT INTO related_widgets (widgetid, related_widgetid)
  2. VALUES (1, 2)

When you want a full list of which widgets are related to widget with widgetid = 3, the following query will give you a complete list:

  1. SELECT * FROM related_widgets
  2. WHERE widgetid = 3 OR related_widgetid = 3

Hope this helps,
darkagn
There are no stupid questions, only those too stupid to ask for help.
Reply With Quote  
Posts: 37
Reputation: Tom Tolleson is an unknown quantity at this point 
Solved Threads: 0
Tom Tolleson's Avatar
Tom Tolleson Tom Tolleson is offline Offline
Light Poster

Re: Database Design Question

  #3  
Dec 5th, 2008
Great idea! I think that does it. Thanks!
Reply With Quote  
Reply

Only community members can participate in forum threads. You must register or log in to contribute.



Similar Threads
Other Threads in the MySQL Forum
Views: 452 | Replies: 2 | Currently Viewing: 1 (0 members and 1 guests)

 

Thread Tools Display Modes
Forums | Blogs | Tutorials | Code Snippets | Whitepapers | RSS Feeds | Advertising
All times are GMT -4. The time now is 1:15 pm.
Newsletter Archive - Sitemap - Privacy Statement - Acceptable Use Policy - Contact Us
Forum system based on vBulletin Copyright ©2000 - 2009, Jelsoft Enterprises Ltd.
©2003 - 2008 DaniWeb® LLC