Case Scenario
ABC Consulting Inc. is a software development company that develops custom software solutions for other companies. They need a database to maintain information about their customers, employees, and the projects that they are working on. The customer information would include the name of the company as well as the contact name, address information, and phone information. A customer may have many projects going on at any point in time. The employee information would include the name of the employee and the skill(s) that the employee maintains.
ABC employees have a variety of different skills such as Java, C++, SQL, PHP, etc. An employee may be working on many projects at the same time. The project information would include a description of the project, the customer for whom the project is being done and the budget dollars that were estimated for the project. Each project is for one customer.
Some of the other goals that ABC wants to accomplish with their database include the following information:
- The employees who are currently working on a particular project.
- The projects that are under way for each customer.
- The skills that are maintained by each employee.
You are assigned to design a database for this project by creating the ER diagram and writing SQL script to generate a database for maintaining information about the company’s customers, employees, and the on-going projects.