Download presentation
Presentation is loading. Please wait.
Published byEmmeline Atkinson Modified over 9 years ago
1
McGraw-Hill/Irwin © 2008 The McGraw-Hill Companies, All Rights Reserved Plug-In T5: Designing Database Applications Business Driven Technology
2
1-2 LEARNING OUTCOMES 1.Describe the purpose of the relational database model in a database management system 2.List the relational database model’s basic components 3.Describe why entities and attributes are organized into tables 4.Describe how data redundancy is handled in the relational database model
3
1-3 5.Explain the need for an entity- relationship Diagram in a database management system 6.Describe the Chen model symbols used in entity-relationship modeling LEARNING OUTCOMES
4
1-4 INTRODUCTION The core chapters introduced: –Database - maintains information about various types of objects (inventory), events (transactions), people (employees), and places (warehouses) –Database management system (DBMS) - software through which users and application programs interact with a database –Relational database model - a type of database that stores its information in the form of logically-related two-dimensional tables
5
1-5 ENTITIES AND DATA RELATIONSHIPS Data model - a formal way to express data relationships to a database management system (DBMS) Before designing a database for any data model, data relationships need to be defined Entity-relationship diagram (ERD) - a technique for documenting the relationships between entities in a database environment
6
1-6 Entities And Their Attributes Entity - also called a table or relation is a person, place, thing, transaction, or event about which information is stored –A customer is an entity, as is a merchandise item Attributes, also called fields or columns, are characteristics or properties of an entity class –Example: A CUSTOMER entity can be described by a Customer Number, First Name, Last Name, Street, City, State, Zip Code, Phone Number, Credit Card No, and Credit Card Exp
7
1-7 Entities And Their Attributes
8
1-8 Entity Identifiers Entity identifier - ensures that each entity instance has a unique attribute value that distinguishes it from every other entity instance –An entity identifier is also referred to as a primary key –Q. Can email address or telephone number be a good identifier for an Employee, Student,…
9
1-9 Entity Identifiers Constraint - a rule to which some elements in a database must follow –When an instance of an entity in a database is stored, the DBMS needs to ensure that the new instance has a unique identifier The fact that every entity MUST have an indentifier is an example of a constraint.
10
1-10 Entity Identifiers
11
1-11 Attributes There are several types of attributes, including: –Simple vs. composite –Single-valued vs. multi-valued –Stored vs. derived –Null-valued
12
1-12 Simple versus Composite Composite attributes can be divided into smaller subparts, which represent more basic attributes that have their own meanings Example: Address Address can be broken down into a number of subparts, such as Street, City, State, Zip Code Street may be further broken down by Number, Street Name, and Apartment/Unit Number Attributes that are not divisible into subparts are called simple attributes
13
1-13 Simple versus Composite
14
1-14 Single-Valued versus Multi-Valued Single-valued means having only a single value of each attribute of an entity at any given time Example: –A CUSTOMER entity allows only one Telephone Number for each CUSTOMER –If a CUSTOMER has more than one Phone Number and wants them all included in the database the CUSTOMER entity cannot handle them
15
1-15 More example: an EMPLOYEE entity with attributes for the Name(s) and Birthdate(s) of dependents would be considered multi-valued.
16
1-16 Multi-valued means having the potential to contain more than one value for an attribute at any given time An entity in a relational database cannot have multi- valued attributes, those attributes must be handled by creating another entity to hold them Relational databases do not allow multi-valued attributes because they can cause problems: –Confuses the meaning of data in the database –Significantly slow down searching –Place unnecessary restrictions on the amount of data that can be stored Single-Valued versus Multi-Valued
17
1-17 Multi-Valued Attributes
18
1-18 Multivalued Attributes
19
1-19 Eliminating Multivalued Attributes- one solution Eliminatinating multivalued attribute by repeating rows generates redundancies – Not recommended
20
1-20 How to solve multi-valued attributes Generally, a multi-valued attribute is a major hint that another entity is needed. The only way to handle multiple values of the same attribute is to create a new entity for which multiple instances can be stored, one for each value of the attribute.
21
1-21 How to solve multi-valued attributes Examples: –Employee dependents Create an extra entity named Dependent and link to Employee entity –Employee phone numbers Create an extra entity named Phone and link to Employee entity
22
1-22 Stored versus Derived If an attribute can be calculated using the value of another attribute, it is called a derived attribute The attribute that is used to derive the attribute is called a stored attribute Derived attributes are not stored in the file, but can be derived when needed from the stored attributes Example: A person’s age –If the database has a stored attribute such as the person’s Date of Birth, you can create a derived attribute called Age from taking the Current Date and subtracting the Date of Birth to get the age
23
1-23 Null-Valued There are cases where an attribute does not have an applicable value for an attribute For these situations, the null-valued attribute is created Example: A person who does not have a mobile phone would have null stored at the value for the Mobile Phone Number attribute
24
1-24 DOCUMENTING LOGICAL DATA RELATIONSHIPS Techniques for creating data model –Entity-Relationship Diagram (ERD) E-R data model components –Entities (things) –Relationships among those entities
25
1-25 DOCUMENTING LOGICAL DATA RELATIONSHIPS The most commonly used styles of ERD notation is the Chen model The Chen model uses rectangles to represent entities –Each entity's name appears in the rectangle and is expressed in the singular, as in –Attributes are expressed in ovals CUSTOMER City
26
1-26 Chen Model
27
1-27 Documenting Relationships – The Chen Method The Chen method uses diamonds for relationships and lines to show the type of relationship between entities The relationship is always a “verb” while the entity is a “noun”
28
1-28 Once the basic entities and attributes have been defined, the next task is to identify the relationships among entities There are three basic types of relationships: 1.One-to-one 2.One-to-many 3.Many-to-many Basic Data Relationships Relationships are displayed in diamond shape Relationship [usually a verb]
29
1-29 One-to-One One-to-one (1:1) – a relationship between two entities in which an instance of entity A can be related to only one instance of entity B and entity B can be related to only one instance of entity A
30
1-30 One-to-One: more example A manager manages one department; a department has only one manager ManagerDepartmentManages 11
31
1-31 One-to-Many One-to-many (1:M) – a relationship between two entities, in which an instance of entity A, can be related to zero, one, or more instances of entity B and entity B can be related to only one instance of entity A
32
1-32 One-to-Many - example An employee can work in only one department; this relationship is single-valued for employees. On the other hand, one department can have many employees; this relationship is multi-valued for departments. The relationship between employees (single-valued) and departments (multi-valued) is a one-to-many relationship. EmployeeDepartmentworks M1
33
1-33 One-to-Many - example More Example? Patient and physician relationship
34
1-34 Many-to-Many Many-to-many (M:N) – a relationship between two entities in which an instance of entity A can be related to zero, one, or more instances of entity B and entity B can be related to zero, one, or more instances of entity A
35
1-35 More example, –Student-Instructor relationship Many-to-Many
36
1-36 Cardinality Number of entity instances that can be involved in relationship –Maximum cardinality maximum number involved –Minimum cardinality constraints on minimum requirements
37
1-37 RELATIONSHIP CONNECTIVITY AND CARDINALITY Cardinality - expresses the specific number of entity instances associated with one instance of the related entity In the Chen model, the cardinality is indicated by placing numbers beside the entities in the format of (x, y) –The first number is the minimum value and the second number is the maximum value
38
1-38 Weak Entities a weak entity is the one that cannot exist in the database unless a related instance of another entity is present and related to it. An ORDER is an example of a weak entity –ORDER doesn’t exist if there is no CUSTOMER An employee’s DEPENDENT is an example of a weak entity. –DEPENDENT doesn’t exist if there is no EMPLOYEE
39
1-39 Weak Entities Identifying weak entities and their associated mandatory relationships is important for maintaining the consistency and integrity of the database. Consider the effect of storing an ORDER without knowing the CUSTOMER to which it belongs.
40
1-40 There is no obvious way to indicate weak entities and mandatory relationships –An ORDER should not exist in the database without a CUSTOMER –ORDER is a weak entity and its relationship with a CUSTOMER is mandatory –Some database designers have added a new symbol to the Chen method for a weak entity, a double-bordered rectangle Weak Entities
41
1-41 DEALING WITH MANY-TO-MANY RELATIONSHIPS There are problems with many-to-many relationships 1.The relational data model cannot handle many-to-many relationships directly –It is limited to one-to-one and one-to-many relationships –Many-to-many relationships need to be replaced with a collection of one-to-many relationships
42
1-42 Associative Entities Associative ( or composite) entities - entities that exist to represent the relationship between two other entities Example: –There is a many-to-many relationship between an ITEM and an ORDER An ORDER can contain many ITEM(s) and over time, the same ITEM can appear on many ORDER(s)
43
1-43 Many-to-Many Relationship
44
1-44 Associative (Composite) Entities A associative (composite) entity called a ORDER LINE (thinking of it as a line item on a packing slip) is created to represent the relationship between an ORDER and an ITEM.
45
1-45 Entities from the Video Database
46
1-46 Many-to-Many Relationship
47
1-47 Associative Entity for student- course relationship M 1 M 1 1M (M-M) Student-Course relationship is now replaced with multiple (1-M) relationship
48
1-48 SCHEMAS Schema - a completed entity-relationship diagram representing the overall, logical plan of a database –The way in which the people responsible for maintaining the database will see the design
49
1-49 Schema Example of a SCHEMA
50
1-50 The Relational Data Model Once the ERD is completed, it can be translated from a conceptual logical schema into the formal data model required by the DBMS Most database installations are based on the relational data model
51
1-51 UNDERSTANDING RELATIONS The word “table” or “relation” is used synonymously with “entity” The definition specifies what will be contained in each column of the table, but does not include data When rows of data are included, an instance of a relation is created
52
1-52 Columns and Column Characteristics Two or more tables within the same relational schema may have columns with the same names When the same column name appears in more than one table and tables that contain that column are used in the same data manipulation operation –The name of the column must be qualified by preceding it with the name of the table and a period Example: CUSTOMER.(CustomerNumber, FirstName, LastName, PhoneNumber)
53
1-53 Rows and Row Characteristics A row in a relation has the following properties: –Only one value at the intersection of a column and row - a relation does not allow multi-valued attributes –Uniqueness - there are no duplicate rows in a relation –Primary key - a field (or group of fields) that uniquely identifies a given entity in a table
54
1-54 Primary Key A unique primary key makes it possible to uniquely identify every row in a table The primary key is important to define to be able to retrieve every single piece of data put into a database There are only three pieces of information to retrieve for any specific bit of data: 1.The name of the table 2.The name of the column 3.The primary key of the row
55
1-55 The proper notation to use when documenting the name of the table, the column name, and primary key (underlined): CUSTOMER(CustomerNumber, FirstName, LastName, PhoneNumber) Two qualities of all primary keys: 1.A primary key should contain some value that must not be null. 2.A primary key should never change Primary Key
56
1-56 When a table contains a column that is the same as the primary key of a table, the column is called a foreign key Foreign key - a primary key of one table that appears as an attribute in another file and acts to provide a logical relationship between the two files and depicted by DOUBLE UNDERLINE Example: CUSTOMER(CustomerNumber, FirstName, LastName, PhoneNumber) ORDER(OrderNumber, CustomerNumber, OrderDate ) In above example CustomerNumber is a foreign key for ORDER table REPRESENTING DATA RELATIONSHIPS
57
1-57 Foreign Keys And Primary Keys In The Same Table Foreign keys do not necessarily need to reference a primary key in a different table –They need only reference a primary key Example: EMPLOYEE(EmployeeNumber, FirstName, LastName, Department, Manager Number) –In the above Manager Number is a foreign key because it reference Employee Number of the same table b/c a manager is an employee as well.
58
1-58 Constraint on Primary key value Constraint: –A primary key cannot be NULL.
59
1-59 Constraint - Referential Integrity The relational data model enforces a constraint called referential integrity –Referential integrity - states that every non-null foreign key value must match an existing primary key value Referential integrity ensures the consistency of the cross-references among tables Referential integrity constraints are stored in the database that are enforced automatically by the DBMS
60
1-60 The Data Dictionary Data dictionary - a file that stores definitions of information types, identifies the primary and foreign keys, and maintains the relationships among the tables The structure of a relational database is stored in the database's data dictionary, or catalog The data dictionary is made up of a set of relations, identical in properties to the relations used to hold data Information found in a data dictionary: –Definitions of the columns that make up each table –Integrity constraints placed on relations –Security information (which user has the right to perform which operation of which table)
61
1-61 The Data Dictionary
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.