Dr Kehinde Aruleba is a lecturer at the School of Computing and Mathematical Sciences, University of Leicester, with research interests in handwriting recognition, algorithms and artificial intelligence, data colonialism, accessibility, and sharing, responsible AI, and more.
CO2102 Databases and DomainModelling is a 15-credit module that requires 150 hours of work in semester 1.
A relational database consists of nothing but relations represented as tables.
Each table in a relational database is homogeneous, meaning each column contains only values from a specified domain.
Each table in a relational database has a predefined and time-invariant format, which is specified by the relation schema.
A table in a relational database can represent either an entity set or a relationship between entities.
The module includes theory topics presented in class, time for questions on theory and understanding, computer lab sessions, and assessment.
The computer lab sessions include pre-session materials, materials to read/watch before the session, session materials, demos and exercises to complete during the session, post-session materials, and solutions to exercises for review.
The assessment for the module includes a project assignment worth 50% and a class test worth 50%.
Before databases, a file-based approach was used, which is a collection of application programs that perform services for the end-users such as answering queries and production of reports.
Each program in a file-based database defines and manages its own data, leading to data redundancy, inconsistency, and duplication.
A file-based database can be likened to a collection of important documents, like letters, invoices, and receipts, that are organized and stored for easy access.
Each table in a relational database has at least one data category in a column, and each row has a certain data instance for the categories which are defined in the columns.
The Structured Query Language (SQL) is the standard user and application program interface for a relational database.
Disadvantages of the file-based approach include separation of data, duplication of data, data dependence, incompatible file formats, fixed queries, and low reliability.
A library needs to manage a book catalogue, book loans, book reservations, recall of overdue loans, catalogue inquiries, and membership.
Relational databases are made up of a set of tables with data that fits into a predefined category.
An integrated collection of concepts for describing data, relationships between data, and constraints on the data is known as a data model.
A database is a collection of information that is organized so that it can be easily accessed, managed and updated.
Databases can be classified according to content type: bibliographic, full text, numeric and images.
There are many different kinds of databases, ranging from the most prevalent approach: the relational database.
A relational database, invented by E.F. Codd at IBM in 1970, is a tabular database in which data is defined so that it can be reorganized and accessed in a number of different ways.
Databases have evolved since their inception in the 1960s, beginning with hierarchical and network databases, through the 1980s with object-oriented databases.
Databases can also be classified according to their organizational approach.
Relational databases are easy to extend, and a new data category can be added after the original database creation without requiring that you modify all the existing applications.
The traditional file approach involves separate files for each library function, with processes to relate data between the files when necessary.
Another approach is to create one big single file.
There are three components of each data model: a structural part, a set of integrity rules to ensure data accuracy, and a manipulative part that defines the type of operations that are allowed on the database.
The order of attributes is irrelevant.
Each attribute (column) has a distinct name.
Each tuple (row) is distinct.
The number of columns (attributes) is called degree.
Values of attributes come from the same domain.
A superkey is a set of one or more attributes that uniquely identifies an entity within a relation.
A superkey is a combination of columns that uniquely identifies any row within a relational database management system (RDBMS) table.
A set of entities of the same type is represented as a table (also called relation).
An atomic place in a table is called a cell.
There can be multiple Candidate Keys in one table.