关系数据库设计 夏英 (xiaying@ Dcqupt. edu. cn) 重庆邮电大学计算机学院
1 关系数据库设计 夏英 (xiaying@cqupt.edu.cn) 重庆邮电大学计算机学院
要内容 数据库建模过程 概念模型设计 ■概念模型转化为关系模式 关系数据理论
2 主要内容 数据库建模过程 概念模型设计 概念模型转化为关系模式 关系数据理论
l。数据库建模过程 根据业务需求 I tamillecgtRGdhl. d·j rs■ 口口■ ■■■■■■■■■■ □■■□■■口■■■□ 2t dicd Dipt Td ■■■■■■■■■■■■ 概念模型 逻辑模型 物理模型
3 概念模型 逻辑模型 物理模型 1. 数据库建模过程 根据业务需求
教据库与应用发的生命周期 Information Requirements Application Requirements Strategy and Analysis Strategy and Analysis Logical Data Proces Modeling Cross-Checking Modeling Entity Relationship Data Flow Diagram Design Databas Design Application Relational and Physical Design Model: table view. etc Generation Applicatio Database Development Generation SQL Script Application Database ORACLE
数据库与应用开发的生命周期 Database Information Requirements Process Modeling Data Flow Diagram Application Design Application Development Application Application Requirements Cross-Checking Strategy and Analysis Database Generation Generation SQL Script Strategy and Analysis Logical Data Modeling Entity Relationship Diagram Database Design Design Relational and Physical Model: Table, View, etc
Process Modeling Process Data flow diagram Modeling Time Card compute Hours WorkedL Hous Wosed ot I Application Design Pay Check Application Produce Pay check Development Main components of dFD Process Application External agents Data store ORACLE
Process Modeling Process Modeling Application Design Application Application Development Data Flow Diagram Main components of DFD: • Process • External agents • Data flow • Data store
Logical Data Modeling Information Requirements Logical Data Entity Relationship Diagram Modeling EMPLOYEE DEPARTMENT sponsible for manage Database o Phone Number Design o Commission Percentag Database managed by Generation Main components of ERD: Entitie Database Relationships attribute Keys ORACLE
Logical Data Modeling Logical Data Modeling Database Design Database Generation Database Information Requirements Entity Relationship Diagram Main components of ERD: • Entities • Relationships • Attributes • Keys
Database design Information Requirements Relational mode Logical Data Modeling EMPLOYEES NUMBER (o Finst Nam Name VARCHAR2 (50 e DEPARTMENT_PK VARCHAR2(30) Database /. EMEPLOTHENE 1D ntage NUMBER te Date Design NUMBER(e NUMBER () Database Generation Database ORACLE
Database Generation Database Design Relational Model Logical Data Modeling Database Design Database Information Requirements
Database generation SQL ScrIp Information Requirements CREATE TABLE DEPARTMENTS D NUMBER (6) NOT NULL Name VARCHAR2 (50) Logical Data Mod BLE DEPARTMENTS eln ONSTRAINT DEPARTMENT PK PRIMARY KEY (ID ABLE EMPLOYEES ID NUMBER(6) NOT NULL Database ARCHAR2 (50) Email VARCHAR2 (30 Design Phone Number VARCHAR2 (20) Hire Date DATE alary NUMBER (8. 2) Commission Percentage NUMBER (2,2) Database DEPARTMENT ID NUMBER (6) NOT NULL Generation INT EMPLOYEE PK PRIMARY KEY (ID MPLOYEES ADD AINT Relation I FOREIGN KEY REFERENCES DEPARTMENTS Database ORACLE
Database Generation Logical Data Modeling Database Generation Database Information Requirements SQL Script CREATE TABLE DEPARTMENTS ( ID NUMBER (6) NOT NULL , Name VARCHAR2 (50) ) ; ALTER TABLE DEPARTMENTS ADD CONSTRAINT DEPARTMENT_PK PRIMARY KEY ( ID ) ; CREATE TABLE EMPLOYEES ( ID NUMBER (6) NOT NULL , First Name VARCHAR2 (50) , Last Name VARCHAR2 (50) , Email VARCHAR2 (30) , Phone Number VARCHAR2 (20) , Hire Date DATE , Salary NUMBER (8,2) , Commission Percentage NUMBER (2,2) , DEPARTMENT_ID NUMBER (6) NOT NULL ) ; ALTER TABLE EMPLOYEES ADD CONSTRAINT EMPLOYEE_PK PRIMARY KEY ( ID ) ; ALTER TABLE EMPLOYEES ADD CONSTRAINT Relation_1 FOREIGN KEY ( DEPARTMENT_ID ) REFERENCES DEPARTMENTS ( ID ) ; Database Design
2。概念棋 概念模型 描述问题域的概念性框架 通过符号或图表表示 平台无关 广泛使用的概念模型表达方法 ER图,UML类图 广泛使用的建模工具 Power Designer, Visio, MySQL Workbench+
9 2. 概念模型 概念模型 描述问题域的概念性框架 通过符号或图表表示 平台无关 广泛使用的概念模型表达方法 E-R图,UML类图 广泛使用的建模工具 PowerDesigner, Visio, MySQL Workbench等
概念棋剋设计的内涵 数据抽象 抽象出客观世界中的概念、对象的本质特性 ■需求分析阶段对数据分类和组织,从而形成实体、实体的 属性,实体的码,实体间的联系等 三类数据抽象机制 ■分类—具有共同特性和行为的对象形成一个类型 对象值与型之前的“ is member of语义 聚集一类型的组成成分 类型与成分之间的” is part of语义 概括—一类型之间的子集联系,即超类、子类等 类型之间的“ is subset of"或“Is-a'语义
10 概念模型设计的内涵 数据抽象 抽象出客观世界中的概念 、对象的本质特性 需求分析阶段对数据分类和组织,从而形成实体 、实体的 属性,实体的 码,实体间的联系 等 三类数据抽象机制 分类——具有共同特性和行为的对象形成一个类型 对象值与型之前的 “is member of”语义 聚集——类型的组成成分 类型与成分之间的 ”is part of”语义 概括——类型之间的子集联系,即超类 、子类等 类型之间的 “is subset of”或“Is-a”语义