Purchase Solution

A detailed database design example

Not what you're looking for?

Ask Custom Question

A college course may have one or more scheduled sections, or may not have a scheduled section. Attributes of COURSE include Course_ID, Course_Name, and Units. Attributes of SECTION include Section_Number and Semester_ID. Semester_ID is composed of two parts: Semester and Year. Section Number is an integer (such as "1" or "2") that distinguishes one section from another for the same course but does not uniquely identify a section. How did you model SECTION? Why did you choose this way versus alternative ways to model SECTION?

Purchase this Solution

Solution Summary

This solution provides a very detailed walk through of the database design process for a couple of related tables (course, and section). The solution shows how some of the "obvious" choices lead to problems and how to fix those.

Solution Preview

As stated in the posting, the section information contains a section number and a semester id. The section number is an integer (e.g. "1"). The semester id contains the year and the semester (e.g. "fall2008"). It is possible for a course to have 0 or more sections scheduled.

In order to determine the best way to model this information let's first look at the course information. A course contains an id, a name, and the number of units. Arranged as a table this looks like this:

<pre>
Course_id Course_name Units
-------------------------------------
1 Algebra I 4
2 English I 4
</pre>

The obvious way to add section data is to add additional columns to the table as ...

Purchase this Solution


Free BrainMass Quizzes
C# variables and classes

This quiz contains questions about C# classes and variables.

Inserting and deleting in a linked list

This quiz tests your understanding of how to insert and delete elements in a linked list. Understanding of the use of linked lists, and the related performance aspects, is an important fundamental skill of computer science data structures.

Javscript Basics

Quiz on basics of javascript programming language.

Word 2010: Tables

Have you never worked with Tables in Word 2010? Maybe it has been a while since you have used a Table in Word and you need to brush up on your skills. Several keywords and popular options are discussed as you go through this quiz.

Java loops

This quiz checks your knowledge of for and while loops in Java. For and while loops are essential building blocks for all Java programs. Having a solid understanding of these constructs is critical for success in programming Java.