570 likes | 710 Views
Database Systems: Design, Implementation, and Management Eighth Edition. Chapter 3 The Relational Database Model. Objectives. That the relational database model offers a logical view of data About the relational model’s basic component: relations
E N D
Database Systems: Design, Implementation, and ManagementEighth Edition Chapter 3 The Relational Database Model
Objectives • That the relational database model offers a logical view of data • About the relational model’s basic component: relations • That relations are logical constructs composed of rows (tuples) and columns (attributes) • That relations are implemented as tables in a relational DBMS • About relational database operators, the data dictionary, and the system catalog • How data redundancy is handled in the relational database model • Why indexing(索引) is important 2 Database Systems, 8th Edition
3.1 A Logical View of Data • Relational model • View data logically rather than physically • Table • Structural and data independence • Resembles a file conceptually • Relational database model easier to understand than hierarchical and network models 3 Database Systems, 8th Edition
Tables and Their Characteristics • Logical view of relational database based on relation • Relation thought of as a table • Table: two-dimensional structure composed of rows and columns • Persistent representation of logical relation • Contains group of related entities = an entity set 4 Database Systems, 8th Edition
屬性值域 5 Database Systems, 8th Edition Primary key, 主索引鍵, 主要鍵
6 Database Systems, 8th Edition
3.2 Keys (索引鍵) • Each row in a table must be uniquely(唯一地) identifiable (可辨別) • Key is one or more attributes that determine other attributes • Key’s role is based on determination (決定) • A determines B (represented as A B) • If you know the value of attribute A, you can determine the value of attribute B • Functionaldependence (功能相依性): • Attribute B functionally dependent on A if all rows in table that agree in value for A also agree in value for B 7 Database Systems, 8th Edition
8 Database Systems, 8th Edition
Keys (continued) • Compositekey (組合鍵) • Composed of more than one attribute • Keyattribute • Any attribute that is part of a key • If attribute B is functionally dependent on a composite key A but not on any subset of A, B isfully functionally dependent(完全功能相依) on A • Superkey (超級鍵) • Any key that uniquely identifies each row • Candidatekey(候選鍵) • A superkey without unnecessary attributes • A table may have several candidate keys • Primary key (主索引鍵) • A table has only one primary key, which is chosen from candidate keys 9 Database Systems, 8th Edition
Keys (continued) • Nulls (空值, 虛值): • No data entry • Not permitted in primary key • Should be avoided in other attributes • Can represent • An unknown attribute value • A known, but missing, attribute value • A “not applicable” condition • Can create problems when functions such as COUNT, AVERAGE, and SUM are used • Can create logical problems when relational tables are linked 實體完整性: 主索引鍵不能是 空值 10 Database Systems, 8th Edition
Keys (continued) • Controlled redundancy (受控的重複性): • Makes the relational database work • Tables within the database share common attributes • Enables tables to be linked together • Multiple occurrences of values not redundant when required to make the relationship work • Redundancy exists only when there is unnecessaryduplication of attribute values 11 Database Systems, 8th Edition
12 Database Systems, 8th Edition
A relational schema (關聯式結構描述) is a representation of database tables where each table is listed by its name followed by its attributes in parentheses: VENDOR(VEND_CODE, VEND_CONTACT, VEND_AREACODE, VEND_PHONE) 13 Database Systems, 8th Edition
Keys (continued) • Foreignkey (FK, 外部索引鍵, 外來鍵) • An attribute whose values match primary key values in the related table • Referentialintegrity (參考完整性) • FK contains a value that refers to an existing valid tuple (row) in another relation • Secondarykey(次要鍵) • Key used strictly for data retrieval purposes • A table may have many secondary keys 14 Database Systems, 8th Edition
15 Database Systems, 8th Edition
3.3 Integrity Rules (完整性規則) • Many RDBMs enforce integrity rules automatically • Safer to ensure application design conforms to entity and referential integrity rules • Designers may use flags to avoid nulls • Flags indicate absence of some value 16 Database Systems, 8th Edition
17 Database Systems, 8th Edition
Integrity Rule Example 19 Database Systems, 8th Edition
3.4 Relational Set Operators • Relational algebra (關聯式代數) • Defines theoretical way of manipulating table contents using relational operators • Use of relational algebra operators on existing relations produces new relations. This is called the property of closure (封閉性). • UNION INTERSECT • DIFFERENCE PRODUCT • SELECT PROJECT JOIN DIVIDE 20 Database Systems, 8th Edition
Combines all rows from two tables, excluding duplicate rows • Tables must have the same attribute characteristics • (union-compatible, 聯集相容) 21 Database Systems, 8th Edition
22 Database Systems, 8th Edition
Yields all possible pairs of rows • from two tables • Also known as the Cartesian • product (卡笛生乘積) 23 Database Systems, 8th Edition
Yields a horizontal(水平的) subset of a table 24 Database Systems, 8th Edition
Yields a vertical (垂直的) subset of a table 25 Database Systems, 8th Edition
Join (合併) • Allows information to be combined from two or more tables • Real power behind the relational database, allowing the use of independent tables linked by common attributes 26 Database Systems, 8th Edition
Relational Set Operators (continued) • NaturalJoin (自然合併) • Links tables by selecting rows with common values in common attributes • Equijoin (等位合併) • Links tables on the basis of an equality condition that compares specified columns • Theta join (θ-合併) • Any other comparison operator is used • Outerjoin (外部合併) • Matched pairs retained and any unmatched values in other table left null 27 Database Systems, 8th Edition
Natural Join Step 2: Select Natural Join Step 3: Project
Left Outer Join Right Outer Join 30 Database Systems, 8th Edition
31 Database Systems, 8th Edition
3.5 The Data Dictionary and System Catalog • Datadictionary (資料字典) • Provides detailed accounting of all tables found within the user/designer-created database • Contains (at least) all the attribute names and characteristics for each table in the system • Contains metadata: data about data • Sometimes as “the database designer’s database” because it records the design decisions about tables and their structures 32 Database Systems, 8th Edition
Systemcatalog (系統目錄) • Contains metadata • Detailed system data dictionary that describes all objects within the database • System catalog allows RDBMS to check for and eliminate homonyms (同音異義字、同形異義字) and synonyms (同義字)
Y 100-999 FK AGENT 100-999 34 Database Systems, 8th Edition
3.6 Relationships within the Relational Database • 1:M relationship • Relational modeling ideal • Should be the norm in any relational database design • 1:1 relationship • Should be rare in any relational database design • M:N relationships • Cannot be implemented as such in the relational model • M:N relationships can be changed into two 1:M relationships 35 Database Systems, 8th Edition
The 1:M Relationship • Relational database norm • Found in any database environment 36 Database Systems, 8th Edition
37 Database Systems, 8th Edition
The 1:1 Relationship • One entity related to only one other entity, and vice versa • Sometimes means that entity components were not defined properly • Could indicate that two entities actually belong in the same table • Certain conditions absolutely require their use 38 Database Systems, 8th Edition
39 Database Systems, 8th Edition
The M:N Relationship • Implemented by breaking it up to produce a set of 1:M relationships • Avoid problems inherent to M:N relationship by creating a composite entity (組合實體) (also referred to as a bridge entity (橋接實體)) • Includes as foreign keys the primary keys of tables to be linked 40 Database Systems, 8th Edition
CLASS_CODE 41 Database Systems, 8th Edition
Composite Entity 42 Database Systems, 8th Edition
43 Database Systems, 8th Edition
44 Database Systems, 8th Edition
45 Database Systems, 8th Edition
3.7 Data Redundancy Revisited • Data redundancy leads to data anomalies • Such anomalies can destroy the effectiveness of the database • Foreign keys • Control data redundancies by using common attributes shared by tables • Crucial to exercising data redundancy control • Sometimes, data redundancy is necessary 46 Database Systems, 8th Edition
48 Database Systems, 8th Edition
3.8 Indexes (索引) • Orderly arrangement to logically access rows in a table • Indexkey (索引鍵) • Index’s reference point • Points to data location identified by the key • Uniqueindex(唯一索引) • Index in which the index key can have only one pointer value (row) associated with it • Each index is associated with only one table 49 Database Systems, 8th Edition
50 Database Systems, 8th Edition