Final Assignment: Entity Relationship Diagram
Final Assignment: Entity Relationship Diagram
Amy Matthews and Maggie Willis Database Design LIS-688 December 11, 2011
Data Dictionary
STUDENT
The STUDENT entity represents individual students who are currently enrolled in the Library and Information Studies program at the University of North Carolina.
Rules:
Each STUDENT can take many classes and each CLASS can have many students. A STUDENT does not have to be enrolled in a CLASS and a CLASS does not have to have any STUDENTS. Each STUDENT has one ADVISER but each ADVISER can advise many students.
Data Structure:
Data Element Name Data Type Description
Date Number (Double) Text Number (Double) Text Text Text Text Number (Double)
Unique, university-assigned student identification number Last name of student First name of student Middle initial of student, will be NULL for all students with no middle name Date of students birth Number of credit hours completed by each student Class level of each student-first year, second year, third year Current Grade Point Average of each student: x.x Student phone number including area code: xxx-xxx-xxxx Student university email address: [email protected] Date student entered the program Date student finishes the program Identification number of the professor who acts as the students adviser
CLASS
The CLASS entity represents a certain section of a class being offered in a current semester. Each CLASS will have only one COURSE and only one PROFESSOR. Each CLASS can have many STUDENTs, but there are different limits to how many STUDENTs can take any CLASS.
Rules:
Each CLASS can have only one PROFESSOR, but each PROFESSOR can teach many CLASSes. Each CLASS can have only one COURSE code, but each COURSE can have many CLASS sections. Each CLASS can have many STUDENTs enrolled in the CLASS, but each STUDENT can only enroll in a CLASS once.
Data Structure:
CLASS_ID (Primary Key) CLASS_TITLE Number (Double) Text Unique, university assigned class identification number Course title given by the department or professor.
CLASS_SECTN
Text
Number that differentiates between different sections of a course given during a semester Identifies which course each class belongs to
COURSE
The COURSE entity represents a course offered at any point in time within the LIS department. Each COURSE can be connected to many CLASSes, but a COURSE does not have to be taught every semester. A COURSE may be required for graduation and/or may require prerequisite COURSEs before a student can enroll.
Rules:
Each COURSE can have many CLASSes, but each CLASS can belong to only one COURSE.
Data Structure:
COURSE_ID (Primary Key) COUNTER Autonumber assigned to each course as an identifier within the database Unique, university assigned course identification number Class title given by the department Number of credit hours a course is worth Indicates whether a class is required before a student can graduate Courses required before students can enroll; written in course identification numbers: ex. xxx, xxx, & xxx ex. xxx or xxx Notes on specifics of each course where necessary
COURSE_PREREQ
Text
COURSE_NOTES
Text
PROFESSOR
The PROFESSOR entity represents each professor employed by the LIS department at UNCG and at UNCCharlotte. Professors serve advising functions in relationship to STUDENTs.
Rules:
Each PROFESSOR can advise many STUDENTs but each STUDENT can have only one ADVISER.
Data Structure:
PROF_ID (Primary Key) PROF_LASTNAME PROF_FIRSTNAME PROF_INITIAL Number (Double) Text Text Text Unique, university assigned professor identification number Professor last name Professor first name Professor middle initial, will be NULL for professors with no middle initial Professor university email address: [email protected] Professor office phone number including area code: xxx-xxx-xxxx Professor office location and number: ex. School of Education 104
Professor Table:
CREATE TABLE PROFESSOR ( PROF_ID DOUBLE PRIMARY KEY, PROF_LASTNAME TEXT, PROF_FIRSTNAME TEXT, PROF_INITIAL TEXT, PROF_EMAIL TEXT, PROF_PHONE TEXT, PROF_OFFICE TEXT);
Class Table:
CREATE TABLE CLASS ( CLASS_ID DOUBLE PRIMARY KEY, CLASS_TITLE TEXT, CLASS_SECTN TEXT, CLASS_CREDITS DOUBLE, COURSE_ID DOUBLE UNIQUE NOT NULL);
Course Table:
CREATE TABLE COURSE ( COURSE_ID COUNTER PRIMARY KEY, COURSE_CODE TEXT, COURSE_TITLE TEXT, COURSE_RQRD TEXT, COURSE_PREREQ TEXT, COURSE_NOTES TEXT);
Enrollment Table:
CREATE TABLE ENROLLMENT ( STU_ID DOUBLE UNIQUE NOT NULL, CLASS_ID DOUBLE UNIQUE NOT NULL);