DataBase design

Posted on 2014-12-02
Last Modified: 2014-12-22
I am creating a database for a driving school. I Need some idea about linking cars/instructors/locations.

So i thing I need to have a hub where I can store some cars. And the instructor get assigned to the car. Instructor can be assigner to many hubs as well as multiple locations. The question is do i better of assigning instructor to a particular location  or a car?
Question by:erikTsomik
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
  • 2
  • 2
  • 2
LVL 66

Expert Comment

by:Jim Horn
ID: 40477008
Just out of wild curiosity, if you 'need some idea', then how'd you get the job?
LVL 19

Author Comment

ID: 40477023
I am not asking for idea, I am interesting on different opinions
LVL 66

Accepted Solution

Jim Horn earned 250 total points
ID: 40477050
Tell you what ... you paint us a picture as to why this question is not homework using words other than 'this isn't homework', and we'll cough up some opinions.

EE is a technical question and answer site, and not a homework site, so we can help you understand design concepts, or answer specific questions, but we're not about to flat-out do your homework for you.

My first opinion though is the questions you're asking are usually handled in the requirements analysis phase of a project, where developers will interview the business analyst and/or clients to ask details as to what they want built, so that design can begin.  It's dangerous for a developer to assume (ass-u-me) relationships between tables without a solid basis in requirements.
Use Filtering Commands to Process Files in Linux

Learn how to manipulate data with the help of various filtering commands such as `cat`, `fmt`, `pr`, and others in Linux.

LVL 69

Assisted Solution

by:Scott Pletcher
Scott Pletcher earned 250 total points
ID: 40477098
>> So i thin[k] I need to have a hub where I can store some cars. <<

Hmm, I would expect the vehicles (more generic, so I prefer it to cars, who says you can't teach someone to drive a truck or even a motorcycle at some point) to be stored at the locations.  Did the company owners / managers indicate something about a "hub" for vehicles of some sort?

Interesting.  You'll have to decide if you want to treat a "hub" as a type of location or as a completely separate entity from location.  Look at the attributes and properties and see how similar or dissimilar they are.

>> And the instructor get assigned to the car. <<

And location, yes.  But I'd put a date and time on this.  An instructor could certainly use different vehicles on the same day, even potentially in different locations (particularly since you could drive Student A from one location to another, then add Student B to drive back to the original location).

I'd definitely use separate, relationship tables for these vehicle/location, instructor/location, instructor/vehicle, etc., combinations rather than trying to put them in the base/"master" tables.
LVL 19

Author Comment

ID: 40477112
The hub can also be a training location not just a storage.
LVL 69

Expert Comment

by:Scott Pletcher
ID: 40477118
Then I'd definitely treat "hub" as just a subtype of a "location", i.e., just add a "location_type" to the location table to indicate location | hub | <whatever>.

Featured Post

NEW Veeam Agent for Microsoft Windows

Backup and recover physical and cloud-based servers and workstations, as well as endpoint devices that belong to remote users. Avoid downtime and data loss quickly and easily for Windows-based physical or public cloud-based workloads!

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

When it comes to protecting Oracle Database servers and systems, there are a ton of myths out there. Here are the most common.
It is possible to export the data of a SQL Table in SSMS and generate INSERT statements. It's neatly tucked away in the generate scripts option of a database.
Via a live example, show how to extract insert data into a SQL Server database table using the Import/Export option and Bulk Insert.
Viewers will learn how to use the UPDATE and DELETE statements to change or remove existing data from their tables. Make a table: Update a specific column given a specific row using the UPDATE statement: Remove a set of values using the DELETE s…

615 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question