SILS iSchool

05 November 2020



Value Added | daily

Class Schedule

Basics | sessions 01-03
  1. 13 Aug intro and clients | lecture | labs
  2. 20 Aug servers and command line | lecture | labs
  3. 27 Aug networks and protocols | lecture | labs
Web Development | sessions 04-07

  1. 03 Sep structural layer | lecture | labs
  2. 10 Sep presentational layer | lecture | labs
  3. 17 Sep using a structure | lecture | labs
  4. 24 Sep behavioral layer | lecture | labs
Dealing with Markup | sessions 08-09
  1. 01 Oct control objects and display | lecture | labs
  2. 08 Oct tools that read markup | lecture | labs
Working with Data | sessions 10-13
  1. 15 Oct formulas, functions, vectors | lecture | labs
  2. 22 Oct data display | lecture | labs
  3. 29 Oct manipulate data sets | lecture | labs
  4. 05 Nov relational data bases | lecture | labs
Presentation | session 14
  1. 12 Nov designing and delivering a presentation | lecture | labs



The image below is a hyperlink to slides for the lecture
slides for session 13

What are the components of a relational database and
how do they compare with what we already know?

Relational Databases

Definitions

a database is a collection of related data

a database management system (or DBMS) is a system designed for two main purposes

  1. to add, delete, and update data in the database
  2. to provide various ways to view (on screen or in print) the data in the database
a flat file database is one where all the data is contained in a single table, such as in Excel
a relational database is one in which you can store information in different tables, each containing different information that relates to information in the other tables

comparing flat file databases to relational databases

back to top

Why use a relational database design?

  • to eliminate unnecessary redundancy or repetition in storage and in steps required for database maintenance
  • to be able to distribute the database to multiple locations, each with a responsibility to maintain a part of the total database

back to top

So a relational database is characterized by

  • multiple tables, perhaps maintained by multiple locations
  • with relationships defined between the tables, so that the entire distributed, relational database works together

back to top

Entity Relationship Model of a Database

an entity-relationship model (ERM) is an abstract and conceptual representation of data. Entity-relationship modeling is a database modeling method, used to produce a type of conceptual schema or semantic data model of a system, often a relational database, and its requirements in a top-down fashion. Diagrams created by this process are called entity-relationship diagrams (or ER diagrams)

One has choices in how to model the elements in a database. One of the standard textbooks on the topic (Elmasri, R., & Navathe, S. (2011). Fundamentals of database systems. Boston: Addison-Wesley.) offers a view of the several methods.

The purpose of a database is to store information about certain types of objects.
[let's use this example to discuss the topic]

To make the distinctions clear, we will use a color schema in which we use
terms relevant to entity relationship models and their correlates in Excel

ERModel entity set Excel worksheet
composed of entities composed of rows
which have attributes which have column cells

type ⇒⇒⇒⇒⇒⇒ ⇓⇓⇓⇓⇓⇓
ERModel entity set composed of entities which have attributes
Excel worksheets composed of rows which have column cells

An entity class

[like books] is an abstract definition of something

in Excel, there is no correlate as it is just a definition, not an example of a definition


An entity set

is the list of given entities/rows within a given entity class that are currently in the database/worksheet

in Excel, an entity set is a worksheet


an entity

[like a textbook for INLS161] is a concrete example of that description

in Excel, an entity is a row


An entity is composed of attributes

attributes/columns include information we want in the database
attributes/columns help to uniquely identify individual entities within a class
attributes/columns can describe relationships between entities in different classes

in Excel, attributes are columns

back to top

Primary and Foreign Keys

a Primary Key

is a set of attributes/columns that uniquely identifies an entity/a row

a Foreign Key

is a copy of the Primary Key
of one entity/row that appears as an attribute/column in another entity class/worksheet
and helps define the relationship between entities/rows in the two entity classes/worksheets

these keys link together the related entities/rows in a relational database/set of entity sets

back to top

05 November lecture | preps | erm | entities | relationships | sql