Skills & Knowledge DevelopmentStep 1. Data DictionaryBefore we create our Database - we need to document it. Using Google Doc/Word, please complete the following tasks:
Firstly, here is some helpful info: Data Dictionaries: Typical FieldsA data dictionary is a table providing a comprehensive description of each field in the database. Data dictionaries (are used) to describe the characteristics of data including: field name: the name of the field as it appears in the database. data type: includes text, number, date, currency, yes/no (boolean). data format: any special formatting applied to the field; e.g. number of decimal places in number fields, short, medium and long date and time formats. field size: the number of characters allowed for a given field. description: a simple description of field contents. example: a typical field entry.
Sample: an excerpt from a data dictionary | Field name | Data type | Data Format | Field Size | Description | Example | | UserID | Text | NNNNNNNN | 8 | Unique eight digit number represented as text | 0001539 | | FirstName | Text | | 25 | First name of employee | Bill | | Surname | Text | | 25 | Surname of employee | Smith | | DOB | Date | DD/MM/YYYY | 10 | Date of birth as a short date format | 15/07/1982 | | HourlyPayRate | Currency | #####.## | 8 | Rate of pay expressed in dollars per hour | 34.50 | | Height | Real | #.## | 3 | Height in metres, with two decimal places | 1.58 | | FeesPaid | Boolean | | 1 | Y or N for Yes or No | Y |
Source: IPT Course Specifications 
Activity 1- Design data dictionaries for a database used by a school. (School Database)
- Database needs to contains Enrolment Data including
- Student Name
- Student Address
- Student Date of Birth
- Subject Name - e.g. IPT
- Subject Description - e.g. Information Processes and Technology
- Subject Faculty - e.g. TAS, English, Mathematics, Business, Science, etc
- Year of Enrolment - e.g. 2020, 2021
- Student Grade for Subject - e.g. A, B, C etc
Sample data
| Name | Address | Date of Birth | Subject Name | Subject Description | Faculty | Year of Enrolment | Grade | | Joe Bloggs | 1 High Street, Chatswood, NSW, 2067 | 1/12/2003 | 12IPT | Year 12 Information Processes and Technology | TAS | 2021 | A | | Michael Chen | 56 Charming Ave, St Ives, NSW, 2075 | 20/5/2003 | 12IPT | Year 12 Information Processes and Technology | TAS | 2021 | B | | Reuben Choosey | 9 Winterbottom Way, Berowra, NSW, 2081 | 1/8/2003 | 12IPT | Year 12 Information Processes and Technology | TAS | 2021 | B | | | | | | | | | | | | | | | | | | |
- NOTE: We need to NORMALISE the database into
- 1st Normal Form - no repeating groups, (a primary key for all tables, unique field names)
- 2nd Normal Form - 1NF + non-key attributes dependent of all primary key values
- 3rd Normal Form - 2NF + all non-key attributes NOT dependent on any other non-key attributes
- Create a Data Dictionary for a Student Table.
- Think about 5 different types of fields or types of information we might store about a student
- Consider which field may be the Primary Key (uniquely identifies each student) - create one if it does not exist
- Include all of the typical data dictionary fields (field name, data type, data format, field size, description and example) in your response.
- Create a Data Dictionary for a Subject Table
- Identify appropriate fields, including the Primary Key for this table
- Create a Data Dictionary for a Subject Enrolments table
- This table will identify all the subjects a student may take and will link the Student and Subjects tables
- Include some additional fields that are only relevant for a Student and the Subject combination
Step 2. Database Schematic Diagram (aka Schema model)- Draw a schema model for the Schools Database
- Include
- the Table and Field names for each table
- identify the Primary Key fields with a PK
- draw the lines that represent the relationships between each of the table
- on each line, identify the Cardinality (1 to many, 1 to 1, many to many, etc)
3. Create Database in a DBMS- Now implement your schema in a Database Management System (DBMS), such as MySQL.
- You can watch the various Tutorial videos here or in YouTube, etc., to learn how to do this.
- Populate the Database with
- at least 5 different instances of information as records for Student and Subject Tables, and
- sufficient Enrolment Table records to show a Student having many subjects and
- sufficient Enrolment Table records to show a Subject having many students
|
|