This first part of morning’s lecture picked up from Lecture 2 to complete an overview of Entity-Relationship modelling and ER-diagrams. The remainder set out the basic elements of the Relational Model for structured data. Where ER diagrams aim to give a conceptual language for describing things as they are, and have applications well outside databases for general organisation and management, the relational model is explicitly intended as a mathematically precise scheme for the computer-assisted building and querying of large datasets.
On ER modelling the lecture covered the following areas:
- Relationships, relationship instances, relationship sets;
- Relationships of higher arity: binary, ternary, n-ary;
- Cardinality of relationships: many-to-one, one-to-many, many-to-many;
- Key constraints and participation constraints in ER diagrams; partial and total participation;
- Weak entities, their identifying relationship and identifying owner;
- Entity hierarchies: superclasses, subclasses, specialisation and inheritance.
On the relational model the lecture covered the following areas:
- Relations, schemas and instances: fields/attributes/columns and tuples/records/rows;
- SQL and its Data Definition Language DDL;
- Table declarations, attribute declarations, and integrity constraints: primary key constraints and foreign key constraints.
That’s quite a lot of material, and you could reasonably spend some time reviewing it: go through the slides, read the book chapter, or look at online tutorials about these features. You will get to explore all of these further in the tutorial exercises over the next few weeks; and many things will become clearer once you get to use them in practice.
Link: Slides for Lecture 3
The remaining sections of the Ramakrishnan and Gehrke chapter sent round by email on Friday: from §2.5 to the end of the chapter. If you don’t have a copy then pick one up from the cubbyholes outside the ITO in Forrest Hill.
Start working on the tutorial exercises for Week 3: I shall send round email when they are online. While you’re waiting, have a look at the additional references below. They aren’t examinable, but they are chosen to be informative and interesting.
“[Codd’s] relational model was at first very controversial; people thought that the model was too simplistic and that it could never give good performance.”
Jim Gray in Database Systems: A Textbook Case of Research Paying Off
|The Relational Database
IBM100: Icons of Progress
Introduced by Edgar F. Codd in 1970, working at the IBM San Jose research lab in California, this mathematical model for database design ended up transforming the industry.
Link: The Relational Database
|Edgar F. (Ted) Codd
ACM Turing Award 1981
For his fundamental and continuing contributions to the theory and practice of database management systems.
Link: ACM Turing Award Citation
|Codd’s Cellular Automaton
An 8-state machine that is computationally complete and capable of self-replication.
Tim Hutton, Codd’s Self-Replicating Computer. Artificial Life 16(2):99–117, 2010.
Links: Publisher page; Author copy; Wikipedia