Teach database relationships, they’re on NCDC and UNEB Sub ICT syllabus

Many teachers find the database topic complex to teach and often skip it, concentrating on ‘simpler’ topics like word processing, presentations and spreadsheets. The few who attempt to teach it usually end on introductory concepts and usually don’t teach vital concepts like relationships.

Recently, there was a heated discussion in the ITAU NATIONAL 1 WhatsApp group after Teacher X wondered why UNEB had set a number in the 2020 Sub ICT Practical Paper 3 requiring learners to relate two tables. Other teachers came in to support Teacher X and castigate UNEB for setting beyond the scope of the syllabus! However, some other members defended UNEB, saying that relationships need to be examined because they are very important.

At first, I made a quick look at the syllabus book outline for the topic of databases and I couldn’t see the word ‘relationships’ anywhere. I therefore posted an opinion advising members to stick to the syllabus, making reference to an article which appeared in the New Vision in 2017. My view was that if a concept truly is out of the scope of the syllabus, then national examinations should not examine it, otherwise it would be disadvantaging several teachers and learners countrywide who use the syllabus as the guiding framework. Its okay for individual teachers to choose to teach extra concepts beyond the scope of the syllabus, but this should not be for examination purposes – more so national UNEB exams!

However, another member (Mr. Lukyamuzi Ronald) made reference to several instances in which UNEB has set questions involving relationships in databases. These include UACE UNEB 2016 Subsidiary ICT Paper 3 (practical), UACE UNEB 2017 Subsidiary ICT Paper 3 (practical) and now the latest UACE UNEB 2020 Subsidiary ICT Paper 3 (practical). All these papers can be accessed on the Sharebility Uganda Resource pool

On close re-examination of the syllabus, we noticed that in the Guidance To The Teacher section below the table (which is commonly ignored), teachers are asked to guide the learners to take note of the procedures of creating and saving a relational database. The teacher is also advised to prepare a project activity in which learners can develop hands-on skills to create databases with appropriate relations.

Syllabus Interpretation Problem

Some teachers have not been teaching relationships because they think they are out of syllabus scope. Below, I reproduce the 2013 Subsidiary ICT syllabus S850, on the topic of databases:

A level Sub ICT Syllabus: Databases Topic Outline

Learning Outcome: The learner should be able to create and query a simple database

Sub-Topic Competences Content Learning/ Teaching / Strategies
1. Introduction to Databases The learner: · defines a database. · identifies examples of Database Management Systems. · describes features of Database Management System interface. · creates a database. · saves a database. Meaning of a database · Examples of Database Management Systems · Features of Database Management System interface · Database Describing the concept of a database · Demonstrating the concept of a database
2. Database Objects The learner: · creates a table in a database. · modifies a table in a database. · creates forms in a database. · uses forms to insert records. · uses forms to modify records. · generates queries in a database. · creates  database reports. · modifies database reports. · prints database reports. Tables in database · Forms in Database Queries in database · Database reports · Printing a database deport Demonstrating the creation of a database table · Discussing the structure of the created database tables · Making a database project

Guidance to the Teacher

  • · You are advised to use the Ms Access or any other database management system that uses a GUI. No knowledge of sql commands is expected.
  • · Using demonstration, guide the learners to take note of the procedures of creating and saving a relational database.
  • · Group the learners or give them individual activities to enable them develop hands-on skills to create databases with appropriate relations, identify features of database development software and their uses.
  • · Demonstrate to the learners the process of adding fields, field names, and specifying data types for a database.
  • · Assess the learners’ correct use of database terms, create and query databases to form reports.
  • · Where possible, prepare a project activity for learners to keep adding on to their skills as they progress with the topic.

Suggested Competences for Assessment: · Assess the learners’ ability to create and query the database using a low end database management system.

NB: Full syllabus can be downloaded in PDF here.

Suggested Project: School database

The syllabus advises teachers to prepare a project activity for learners to keep adding on to their skills as
they progress with the topic. A suitable project would be creating a simple student admission and academic report making system for a School such a primary school.
Project Objectives:– Understand the entire process of database design
– Understand Table Relationships
– Create a sample school database
– Create related students and results tables
– Create data entry forms
– Generate queries for results, totals, age and average
– Design students’ reports.

Guidelines for school database project

  • The students should brain storm and design a database with at least two related tables, such as the Students and Marks table as illustrated in the schema in the screenshot below.
Schema for sample school database
  • Possible attributes for student table would be Admission No, (Primary Key), Name, Class, Sex, Date of Birth and House.
  • Possible attributes for the Marks table would be Admission No (Foreign Key but also Primary Key for a 1-1 relationship), Math, English, Science and SST.
  • · Students would then create a form for entering the marks into the students table.
  • · A query can be used to calculate totals and average of the four marks fields.
  • · A report card can then be designed, based on the queries, and the school logo can be included in the design to give the students the recommended project-based hands-on practice for this topic.

To do such a project, students will have to first understand database relationships and how to create them between tables in a database.

Understanding Table Relationships

  • Linking Tables tells Access how two tables are related to each other. The fields that you use to link two tables must contain the same concept in two different tables. Primary key and foreign fields are often used when linking tables.
  • · Primary Key: Is a field which uniquely identifies each record in a table. It stores unique record identification numbers different from one another eg social security number, Reg No., etc.
  • · Foreign Key: A field in one table that acts as a primary key of another related table.
  • · Relationship: A relationship is defined an association or link among entities i.e how data in one table are related to data in another table.
  • · Candidate Key: – It is a field with unique values that can act as a primary key though it is not set as a primary key.

To create relationships:

  1. Click the Data Tools tab on the Ribbon and click the Relationships button.
  2. If necessary, click the Show Table button in the Relationships group on the Design tab. In the Show Table window, select a table you want to link, click the Add button, and repeat for each table. Click Close.
  3. Drag a field from one table and drop it on the related field in the second table. (Optional) Check the Enforce Referential Integrity box. Click Create.

Types of Relationships

There are three types of relationships namely;

(a) One-to-one relationships:

Where a particular field in one table has only one matching record in the other table and vice-versa. E.g One Office is occupied by only one manager who is placed there.
Examples of One-to-one (1:1) relationships include;

  • One office manager heads one office
  • One vehicle ID number is assigned to one vehicle
  • One driver drives one delivery truck.
  • One faculty member is chairperson of one department

(b) One-to-many Relationship: Means that for one field in one table, there are several matching records in the other table. Examples of one-to-many (1:M) relationships include;

  • Sex /gender (F/M) is shared by many persons. Ø One book publisher can publish many books.
  • One lecturer / teacher teaches many students.
  • One doctor attends to many patients.

(c) Many-to-many: Where a field in one table contains many records that have many other matching records
in the other table. This type of relationship is rare and difficult to process.

  • A student enrolls in one or more classes, and each class has one or more students registered
  • A passenger buys tickets for one or more flights, and each flight has one or more passengers
  • An order lists one or more products, and each product is listed on one or more orders

How about at O level?

Unlike the A level Sub ICT syllabus, The 2008 syllabus for O level Computer Studies 840 clearly states that teachers should limit the learners to a flat file database, i.e. one without relationships. Also when you take a look at the various UNEB past papers for Computer Studies you will realize it is only in 2014 when UNEB asked candidates to create two database tables, but still the candidates were not required to relate the two tables. (See UNEB 2014 CST Past Paper on Sharebility). The national examination body has been carefully following the syllabi during setting, and they have never required the candidates to create relationships during the final examinations at O level.

However, in my opinion, I think the concept of database relationships is very fundamental in a database environment – actually it is one of the main advantages of using a relational database over spreadsheets and flatfile databases.

Related: Manual vs Electronic Databases-Advantages, Disadvantages and Features.

In a relational database environment, you create ties or relationships among the tables. You first specify the primary key for each table. A primary key is a field in a table that uniquely describes each record. Then you create the logical relationship between two data files using a foreign key. A foreign key is a primary key of one table that also appears in another table. If relationaships are not practically taught and demonstrated to the learners, it is not easy to explain these fundamental concepts of databases which are at times set in the theory paper.

Relationships  is one of those vital but out-of-scope concepts which we may briefly teach as extra information for our students just to help them appreciate the relevance of the topic at hand, but we should remember to focus more on the examinable concepts as laid out in the syllabus.

Article by Mukalele Rogers
National Coordinator 2018-2021

Leave a Reply

Your email address will not be published. Required fields are marked *

%d bloggers like this: