Click here to Skip to main content
Rate this: bad
good
Please Sign up or sign in to vote.
See more: Design database
I have tables like below
t_company has companyid, companyname;
t_department has departmentid, departmentname, companyid;
t_goodstype has goodstypeid, goodstypename, departmentid;
t_goods has goodsid, goodsname, goodstypeid;
 
In my project, in many times I would like to see goods and goodstype a company has.
Is the table up good designed.
Or should add a row like companyid to table t_goodstype and t_goods;
Posted 5-Jan-13 17:30pm
Comments
Jörgen Andersson at 7-Jan-13 16:30pm
   
Can a certain goodstype only be handled at one department?

1 solution

Rate this: bad
good
Please Sign up or sign in to vote.

Solution 1

Your table design is good. Instead of creating a new table, you can create a VIEW by joining the table to giving the output as you like. consider what are the parameter you want to filtering out and what are the data fields you want to get as output.
 
Also you can create a User Defined Table Function for this purpose.
Performance wise, "it depends" on the data and the filtering criteria. I've seen performance improvements from moving from views to UDFs, and also from moving from UDFs to views.
  Permalink  
Comments
qinritukou at 6-Jan-13 0:51am
   
Thanks for your answer, I wonder to know if you know any good books about the database design and the performance of different designs. Thanks ahead.
Tharaka MTR at 6-Jan-13 7:55am
   
following links are very helpful for me also
http://msdn.microsoft.com/en-us/library/ff647793.aspx
http://msdn.microsoft.com/en-us/library/ms172984.aspx
 
Books
for biginers
http://www.amazon.com/Learning-SQL-Alan-Beaulieu/dp/0596520832
http://www.amazon.com/dp/0201752840
Advanced
http://www.amazon.com/dp/0596008945
http://www.amazon.com/dp/0201791692
 
if you are OK with my answer, please "Mark as Answer"

This content, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)

  Print Answers RSS
0 OriginalGriff 475
1 Maciej Los 339
2 Richard MacCutchan 225
3 BillWoodruff 219
4 Suraj Sahoo | Coding Passion 155
0 OriginalGriff 8,759
1 Sergey Alexandrovich Kryukov 7,407
2 DamithSL 5,639
3 Maciej Los 5,269
4 Manas Bhardwaj 4,986


Advertise | Privacy | Mobile
Web03 | 2.8.1411028.1 | Last Updated 5 Jan 2013
Copyright © CodeProject, 1999-2014
All Rights Reserved. Terms of Service
Layout: fixed | fluid

CodeProject, 503-250 Ferrand Drive Toronto Ontario, M3C 3G8 Canada +1 416-849-8900 x 100