Is this database structure correct? Please help

Reply

Join Date: Oct 2009
Posts: 4
Reputation: badmanmc is an unknown quantity at this point 
Solved Threads: 0
badmanmc badmanmc is offline Offline
Newbie Poster

Is this database structure correct? Please help

 
0
  #1
Oct 13th, 2009
I am fairly new to mysql and wanted to practice making a database and tables. As well as filling the tables with made up data and then practicing queries. I wanted to emulate a real life database project.

So I decided to make a database for a Car Dealership.

the database consists of three tables...Car...Buyer..Repairs. The structure is displayed below.


CAR table -

car_id int(5) primary key
make varchar(15)
model varchar(15)
year int(4)
origin varchar(15)
buyer int(5) foreign key references buyer_id in the BUYER table
cost double(5,2)



BUYER table -

buyer_id int(5) primary key
name varchar(20)
address varchar(20)
tel int(10)
car_id int(5) foreign key references car_id in the CAR table


REPAIRS table-

part_id int(5) primary key
origin varchar(15)
cost double(5,2)
car_id int(5) foreign key references car_id in the CAR table


(SCREENSHOT ATTACHED)


Do you see any problems in this structure?
anything I should have done differently?
anything I could do to improve database performance?

Please bare with me as I am new to this and wish to be a DBA one day soon!

All comments will be appreciated!!

Thanks people
Last edited by badmanmc; Oct 13th, 2009 at 10:01 pm.
Attached Thumbnails
db.JPG  
Reply With Quote Quick reply to this message  
Join Date: Mar 2007
Posts: 305
Reputation: timothybard is an unknown quantity at this point 
Solved Threads: 25
timothybard's Avatar
timothybard timothybard is offline Offline
Posting Whiz
 
0
  #2
Oct 14th, 2009
Here are some recommendations I have:

1) Remove the car_id field from the buyer table; what is the purpose of that field?
2) Create a table to track the make of the car; instead of typing in the make for each car in the car table, I would use a table to track all the makes of cars.
3) Create a table to track the model of each car.
4) Break out the repairs table; I would use one table to track when a person brings in a car for a repair and use another table to track all the parts that need to be worked on during the repair session.
Reply With Quote Quick reply to this message  
Join Date: Oct 2009
Posts: 4
Reputation: badmanmc is an unknown quantity at this point 
Solved Threads: 0
badmanmc badmanmc is offline Offline
Newbie Poster
 
0
  #3
Oct 14th, 2009
Thanks!!

Really appreciate the reply it really helps. The reply doesnt just help me with this database but helps me in learning the best practices of database design.

Thanks
Reply With Quote Quick reply to this message  
Join Date: Jun 2005
Posts: 60
Reputation: pclfw is an unknown quantity at this point 
Solved Threads: 5
pclfw pclfw is offline Offline
Junior Poster in Training
 
0
  #4
Oct 15th, 2009
Have a look through this http://www.geekgirls.com/databases_from_scratch_1.htm

Very good intro to DB design.
Reply With Quote Quick reply to this message  
Reply

Message:


Thread Tools Search this Thread



About Us | Contact Us | Advertise | DaniWeb | Acceptable Use Policy | RSS Feed

©2003 - 2009 DaniWeb® LLC