Information Systems Chapter 4 Relational Databases Modelling.

Slides:



Advertisements
Similar presentations
Lecture 6: Design Constraints and Functional Dependencies January 21st, 2004.
Advertisements

1 Lecture 02: Conceptual Design Wednesday, October 6, 2010 Dan Suciu -- CSEP544 Fall 2010.
1 Relational Model and Translating ER into Relational.
1 Lecture 04 Entity/Relationship Modelling. 2 Outline E/R model (Chapter 5) From E/R diagrams to relational schemas (Chapter 5) Constraints in SQL (Chapter.
Lecture #2 October 5 th, 2000 Conceptual Modeling Administration: –HW1 available –Details on projects –Exam date –XML comment.
Functional Dependencies Definition: If two tuples agree on the attributes A, A, … A 12n then they must also agree on the attributes B, B, … B 12m Formally:
1 Lecture 3: Database Modeling (continued) April 5, 2002.
8/28/97Information Organization and Retrieval Files and Databases University of California, Berkeley School of Information Management and Systems SIMS.
1 Conceptual Design with ER Model Lecture #2. 2 Lecture Outline Logistics Steps in building a database application Conceptual design with ER model.
Database Management Systems CSE 594 Lecture #1 April 4 th, 2002.
Modeling & Designing the Database
Lecture 9: Conceptual Database Design January 27 th, 2003.
Multiplicity in E/R Diagrams
Functional Dependencies and Relational Schema Design.
The Relational Data Model Database Model (ODL, E/R) Relational Schema Physical storage ODL definitions Diagrams (E/R) Tables: row names: attributes rows:
1 Lecture 4: Database Modeling (end) The Relational Data Model April 8, 2002.
CS411 Database Systems Kazuhiro Minami
Database Design April 3, Projects, More Details Goal: build a DB application. (almost) anything goes. Groups of 3-4. End of week 2: groups formed.
Entity / Relationship Diagrams Objects entities Classes entity sets Attributes are like in ODL. Relationships: like in ODL except - not associated with.
CS411 Database Systems Kazuhiro Minami 02: The Entity-Relationship Model.
Principles of Database Systems With Internet and Java Applications Today’s Topic Chapter 2: Representing Information with Data Models The lecture notes.
E/R Diagrams and Functional Dependencies. Modeling Subclasses The world is inherently hierarchical. Some entities are special cases of others We need.
Lecture 08: E/R Diagrams and Functional Dependencies.
Lecture 2: E/R Diagrams and the Relational Model Thursday, January 4, 2001.
CS 405G: Introduction to Database Systems Lecture 2 : Database Design I.
Conceptual Database Design. Building an Application with a DBMS Requirements modeling (conceptual, pictures) –Decide what entities should be part of the.
1 Introduction to Database Systems CSE 444 Lecture 07 E/R Diagrams October 10, 2007.
Tallahassee, Florida, 2015 COP4710 Database Systems E-R Model Fall 2015.
© D. Wong Ch. 2 Entity-Relationship Data Model (continue)  Data models  Entity-Relationship diagrams  Design Principles  Modeling of constraints.
Lecture 2: E/R Diagrams and the Relational Model Wednesday, April 3 rd, 2002.
Database Design Why do we need it? – Agree on structure of the database before deciding on a particular implementation. Consider issues such as: –What.
Home Work. Design Principles and Weak Entity Sets.
Lecture 3: Conceptual Database Design and Schema Design April 12 th, 2004.
CPSC 603 Database Systems Lecturer: Laurie Webster II, M.S.S.E., M.S.E.E., M.S.BME, Ph.D., P.E. Lecture 4 Introduction to a First Course in Database Systems.
The Entity-Relationship Model CIS 4301 Lecture Notes 1/12/2006.
1 Lecture 08: E/R Diagrams and Functional Dependencies Friday, January 21, 2005.
COMP 430 Intro. to Database Systems Entity-Relationship Diagram Basics Slides use ideas from Chris Ré.
Modeling Constraints Extracting constraints is what modeling is all about. But how do we express them? Examples: Keys: social security number uniquely.
COMP 430 Intro. to Database Systems ER Design Considerations Slides use ideas from Chris Ré.
CS422 Principles of Database Systems Entity-Relationship Model Chengyu Sun California State University, Los Angeles.
High-level Database Models Prof. Yin-Fu Huang CSIE, NYUST Chapter 4.
Lecture 4: The E/R Model Lecture 4 Today’s Lecture 1.E/R Basics: Entities & Relations ACTIVITY: Crayon time! 2.E/R Design considerations ACTIVITY: Crayon.
The Relational Data Model Database Model (ODL, E/R) Relational Schema Physical storage ODL definitions Diagrams (E/R) Tables: row names: attributes rows:
Lecture 5: Conceptual Database Design
Modeling Constraints Extracting constraints is what modeling is all about. But how do we express them? Examples: Keys: social security number uniquely.
COP4710 Database Systems E-R Model.
Database Design Oct. 3, 2001.
Database Design Why do we need it? Consider issues such as:
Lecture 4 Lecture 4: The E/R Model.
02: ER Model Ch 4.1 – 4.4 Optionally, begin with Ch 2.1.
Conceptual Database Design
Cse 344 May 14th – Entities.
From E/R Diagrams to Relational Schema
Lecture 4: Database Modeling (continued)
Cse 344 May 11th – Entities.
Lecture 2: Database Modeling (end) The Relational Data Model
Lecture 06 Data Modeling: E/R Diagrams
name category name price makes Company Product stockprice buys employs
Functional Dependencies
CMPT 354: Database System I
Lecture 8: The E/R Model I
Lecture 9: The E/R Model II
Functional Dependencies
Lecture 10: The E/R Model III
Lecture 5: The Relational Data Model
CSE544 Data Modeling, Conceptual Design
Lecture 06: SQL Monday, October 11, 2004.
CS4433 Database Systems E-R Model.
Lecture 08: E/R Diagrams and Functional Dependencies
Presentation transcript:

Information Systems Chapter 4 Relational Databases Modelling

Database design Modelling –Decide which part of reality is represented in a database –Agree on structure of the database before deciding on a particular implementation Conceptual Modelling –oriented towards application and users –independent of technology and implementation

Some Terminology Classes of similar objects (and their relationships) students Instances Student -name -firstname -birthdate -section -year Type (of table) Database Etudiant (relational) Schema Real world perceptionAbstraction / Description E/R Diagram Class

Conceptual Modelling Consider issues such as: –What entities to model –How entities are related –What constraints exist in the domain –How to achieve good designs

Database Design Formalisms 1. Entity/Relationship model (E/R): –More relational in nature. –Very widely used 2. Object Definition Language (ODL): –Closer in spirit to object-oriented models (e.g. Java) –Will not be covered Both can be translated (semi-automatically) to relational schemas

2. Entity / Relationship Diagrams Objects entities Classes entity sets Attributes. Relationships: - bidirectional Product Price Order

Company Name StockPrice Person ssn Name Adress Product Name Price Category makesemploysbays

Keys in E/R Diagrams Every entity set must have a key –a key is an attribute that has a different value for every entity Product Name Price Category

What is a Relation ? A mathematical definition: –if A, B are sets, then a relation R is a subset of A x B A={1,2,3}, B={a,b,c,d}, R = {(1,a), (1,c), (3,b)} - makes is a subset of Product x Company: a b c d A= B= Company Name StockPrice Product Name Price Category makes

Multiplicity of E/R Relations one-one: many-one many-many abcdabcd abcdabcd abcdabcd 11 N1 NN

Multiplicity of E/R Relations (2) (arrows notation) one-one: many-one many-many abcdabcd abcdabcd abcdabcd

Company Name StockPrice Person ssn Name Adress Product Name Price Category makesemploysbays N NN N 1 1 What does this say ? Person ssn Name Adress Product Name Price Category

Multi-way Relationships How do we model a purchase relationship between buyers, products and stores? Person ssn Name Adress Product Name Price Category purchase N Person ssn Name Adress Product Name Price Category Store Number Adress N N

Multiplicity in Multiway Relationships Q: what does the multiplicity 1 mean ? A: if I know the store, person, invoice, I know the movie too VideoStore Person Movie Invoice rental N N N 1

Multiplicity in Multiway Relationships Q: what do the multiplicities 1 mean ? A: store, person, invoice determines movie and store, invoice, movie determines person VideoStore Person Movie Invoice rental N N 1 1

Attributes on Relationships Person ssn Name Adress Product Name Price Category Purchase date N Person ssn Name Adress Product Name Price Category Store Number Adress N N

Converting Multi-way Relationships to Binary BuyerOf Product Name Price Category Product Name Price Category Store Number Adress N Person ssn Name Adress Person ssn Name Adress N Purchase Date ProductOf StoreOf N N N N

4. From E/R Diagrams to Relational Schema Entity set  relation Relationship  relation

Entity Set to Relation Product(name, category, price) name category price gizmo gadgets $19.99 Product Name Price Category

Relationships to Relations Makes(product-name, company-name, year) Product-name Product-Category Company-name year gizmo gadgets gizmoWorks 1963 (watch out for attribute name conflicts) Company Name StockPrice Product Name Price Category makes Year N N Product Name Price Category

Relationships to Relations No need for Makes. Modify Product: name category price companyName gizmo gadgets gizmoWorks Company Name StockPrice Product Name Price Category makes 1 N Product Name Price Category

Multi-way Relationships to Relations Person ssn Name Adress Product Name Price Category Purchase date N Person ssn Name Adress Product Name Price Category Store Number Adress N N Purchase(prodName,stName,ssn,date)

4. Design Principles What’s wrong? Product Person Country Moral: be faithful! Purchase President

Design Principles: What’s Wrong? Product Store President personName personAdress date Moral: pick the right kind of entities.

Product Person Store Dates date Moral: don’t complicate life more than it already is. Purchase

Modeling Subclasses Some objects in a class may be special define a new class better: define a subclass Products Software products Educational products So --- we define subclasses in E/R

Understanding Subclasses Think in terms of records: –Product –SoftwareProduct –EducationalProduct field1 field2 field1 field2 field1 field2 field3 field4 field5

Subclasses to Relations NamePriceCategory Gizmo99gadget Camera49photo Toy39gadget Nameplatforms Gizmounix NameAge Group Gizmotodler Toyretired Product Sw.Product Ed.Product

Modeling Subclass Structure

5. Constraints in E/R Diagrams Finding constraints is part of the modeling process. Commonly used constraints: Keys: social security number uniquely identifies a person. Single-value constraints: a person can have only one father. Referential integrity constraints: if you work for a company, it must exist in the database. Other constraints: peoples’ ages are between 0 and 150.

Keys in E/R Diagrams No formal way to specify multiple keys in E/R diagrams Underline: