授人以鱼不如授人以渔朱明工作室zhubob@21cn.com1第三章物流数据库技术【学习目标】1.熟练掌握数据库的定义、特点、模型和组成2.掌握常用的数据库产品的技术特点3.掌握SQL的概念和数据库管理技术4.了解数据挖掘的概念、工具和应用熟练掌握信息和物流信息的概念、特点及作用授人以鱼不如授人以渔朱明工作室zhubob@21cn.com2内容概要数据库技术作为物流信息技术的管理核心,在物流领域得到广泛的应用。本章介绍当前流行的关系数据库管理系统,内容包括数据库的定义、特点和作用,常用的关系数据库管理系统和管理技术,数据挖掘的概念,数据挖掘的工具和应用。授人以鱼不如授人以渔朱明工作室zhubob@21cn.com3第三章物流数据库技术第一节数据库基础知识第二节常用的数据库产品第三节数据库管理技术第四节数据仓库与数据挖掘第五节数据库技术在物流系统中的应用授人以鱼不如授人以渔朱明工作室zhubob@21cn.com4第一节数据库基础知识一、数据库的定义与特点二、数据库管理技术的发展三、数据模型四、数据库系统的组成返回授人以鱼不如授人以渔朱明工作室zhubob@21cn.com5一、数据库的定义与特点(一)数据库的定义(二)数据库的特点(三)数据库的分类授人以鱼不如授人以渔朱明工作室zhubob@21cn.com6一、数据库的定义与特点(一)数据库的定义数据库(DataBase,简称DB)是存放在计算机存储设备中的、以一种合理的方法组织起来的、与公司或组织的业务活动和组织结构相对应的各种相关数据的集合,该集合中的数据可以为公司或组织的各级经过授权的人员或应用程序以不同的权限所共享。返回授人以鱼不如授人以渔朱明工作室zhubob@21cn.com7(二)数据库的特点1.冗余度最少。以一定的数据模型组织数据,数据尽可能不重复。2.资源共享。以最优方式为某个特定组织的多种应用程序或用户服务(应用程序或用户对数据资源共享)。3.数据独立。其数据结构独立于使用它的应用程序。4.管控统一。对数据的定义、操纵和控制由数据库管理系统统一进行管理和控制。返回授人以鱼不如授人以渔朱明工作室zhubob@21cn.com8(三)数据库的分类按数据库的数据结构模型分类:层次型数据库网状型数据库面向对象型数据库关系型数据库。返回授人以鱼不如授人以渔朱明工作室zhubob@21cn.com9二、数据库管理技术的发展数据库管理技术是指数据进行分类、组织、编码、存储、检索和维护的技术。数据库管理技术的发展是和计算机技术及其应用的发展联系在一起的,经历了由低级向高级的发展过程。概括来说可以分为四个阶段:人工管理阶段文件系统阶段数据库系统阶段高级数据库技术阶段。返回授人以鱼不如授人以渔朱明工作室zhubob@21cn.com10三、数据模型模型是对现实世界事物的抽象模仿和模拟,在数据库技术中,使用数据模型(RelationalModel)对现实世界数据特征进行描述。数据模型可分为两类或两个基层次。概念数据模型结构数据模型返回授人以鱼不如授人以渔朱明工作室zhubob@21cn.com11(一)概念数据模型概念数据模型只描述信息的特性和强调语义,而不涉及信息在计算机中的表示,是现实世界到信息世界的第一层抽象。主要概念有:实体(Entity):客观存在并可互相区分的事物。实体可以是人、物、某些概念、事物与事物之间的联系。例如:一个职工、一个学生、学生的一次选课、部门的一次定货。属性(Attribute):实体具有的某一特性。一个实体可由若干个属性来刻画。例如:供应商实体可有供应商号、姓名、地址、电话号、帐号等属性组成。(001、宝洁公司、广州市经济开发区、020-8855766、022-334-556-998)这些属性值组合起来表征了一个供应商。授人以鱼不如授人以渔朱明工作室zhubob@21cn.com12实体型(Entityset):具有相同属性的实体具有共同的特征和性质。用实体名及其属性名集合来抽象和刻画同类实体,称为实体型。例如供应商(供应商号、姓名、地址、电话号、帐号)实体集:同型实体的集合称为实体集。例如,全体供应商就是一个实体集。授人以鱼不如授人以渔朱明工作室zhubob@21cn.com13联系:现实世界的事物之间是有联系的,这种联系必然要在信息世界中反映。一般实体之间的联系有三种:一对一联系(如一个部门有一个经理,而每个经理只在一个部门工作),一对多联系(如一个部门有若干职工,而一个职工只在一个部门工作),多对多联系(如一个项目有多个职工参加而一个职工可以参加多个项目工作)。通常用实体联系图(E-R图)把现实世界中数据的属性和联系描述出来。实体联系图的符号用法如下:实体型用矩型表示,联系用菱型表示,属性用椭圆表示。授人以鱼不如授人以渔朱明工作室zhubob@21cn.com14例:某工厂的库存管理E-R图,表示一个供应商可供应多种零件,每个项目可由不同的供应商供应零件,每种零件可由不同的供应商供应。供应商、零件和项目都是现实世界的实体,供应是它们之间的联系。pn供应商项目供应零件m姓名地址电话号帐号项目号开工日期零件号名称规格单价返回授人以鱼不如授人以渔朱明工作室zhubob@21cn.com15(二)结构数据模型结构数据模型直接描述数据库中数据的逻辑结构,这一类模型设计到计算机系统,又称为基本数据模型。它是用于机器世界的第二层抽象,通常包括一组严格定义的形式化语言,用来定义和操作数据库中的数据,最常用的有:层次模型网状模型关系模型面向对象模型返回授人以鱼不如授人以渔朱明工作室zhubob@21cn.com161.层次模型(HierarchicalModel)。这一模型的主要特征是用树型结构表示实体类型以及实体间的联系,有且只有一个结点没有父结点,该结点为根结点;根结点以外的其他结点有且只有一个父结点。最典型的层次模型系统是IBM公司1969年推出的IMS(InformationManagementSystem)商用数据库系统的数据模型。例:每种零件有若干个项目需要,且每种零件有若干个供应商供应。联系类型“供应”单独作为一个记录类型。零件工程项目供应供应商返回授人以鱼不如授人以渔朱明工作室zhubob@21cn.com172.网状模型(NetworkModel)。这一模型用网状结构表示实体类型及实体之间的联系,用于设计网状数据库。网状模型与层次模型不同的是,在网状模型中允许一个以上的结点可以没有父结点,一个子结点可以有多个父结点。例:客户订货的网状数据模型。客户和产品都是没有父结点,订单明细有两个父结点。客户客户代号公司名称城市电话城市订单订单订货运货费产品产品单价产品订单代号日期城市代号名称订单明细订单代号产品日期数量返回授人以鱼不如授人以渔朱明工作室zhubob@21cn.com183.关系模型(RelationModel)。这一模型用表结构来表示实体类型以及实体间的联系。采用关系模型的数据库由一系列的“二维表”组成,每个表保存着企业或组织业务活动中所涉及的一个特定实体(或者两个实体之间的某种联系)的所有实例的各种属性值数据。授人以鱼不如授人以渔朱明工作室zhubob@21cn.com19例:表明各个客户向本公司订购产品的状况的“订单”就是一个实体,为了记录这一实体所有实例的订单代号、客户代号、订购日期和运货费等属性值数据,就可以在公司数据库中规定一个描述公司所有订单内容的“订单”表。订单代号客户代号订购日期运货费D001K00103/12/03300D002K00203/12/lO50D003K00104/04/05100D004K00204/04/2080D005K00303/12/20100D006K00303/06/0930D007K00403/07/08200D008K00503/10/08100返回授人以鱼不如授人以渔朱明工作室zhubob@21cn.com20(三)面向对象模型(Object—OrientedModel)随着数据库技术的发展,出现了许多如CAD、图象处理等新的应用领域,例如,存储和检索保险索赔案件中的照片、手写的证词等。这就要求数据库系统不仅能处理简单的数据类型,还要处理包括图形、图像、声音、动画等多种音频、视频信息,传统的关系数据模型难以满足这些需求,因而产生了面向对象的数据模型。在面向对象的数据模型中,最重要的概念是对象(Object)和类(Class)。例:书工具书教科书授人以鱼不如授人以渔朱明工作室zhubob@21cn.com21•一个面向对象的数据库模式是由若干个类层次组成的。如上例包含了三个类:书类、工具书类和教科书类。其中,书是超类,而工具书类和教科书类是它的子类。子类可以继承其超类的所有的属性、方法和消息。•对象是对现实世界中的实体在问题空间的抽象。一个对象由属性集、方法集和消息集组成。其中,属性用于描述对象的状态、组成和特性,而方法用于描述对象的行为特征,消息是用来请求对象执行某一操作或回答某些信息的要求,它是对象向外提供的界面。•类:共享同一属性集和方法集的所有对象的集合称为类。每个对象称为它所在类的一个实例。类的属性值域可以是基本数据类型,也可以是类。一个类可以组成一个类层次返回授人以鱼不如授人以渔朱明工作室zhubob@21cn.com22四、数据库系统的组成数据库数据库管理员数据库应用开发工具数据库管理系统操作系统最终用户n最终用户1最终用户2数据库应用系统图3-5数据库系统组成返回授人以鱼不如授人以渔朱明工作室zhubob@21cn.com23第二节常用的数据库产品一、Oracle数据库二、Sybase数据库三、MSSQLServer数据库四、MSAccess数据库与FoxPro数据库返回授人以鱼不如授人以渔朱明工作室zhubob@21cn.com24一、Oracle数据库(一)Oracle数据库的技术特点支持企业联机事务处理支持企业分布式处理支持企业数据仓库与Web技术结合(二)Oracle产品结构及组成Oracle系统是由以RDBMS为核心的一批软件产品构成授人以鱼不如授人以渔朱明工作室zhubob@21cn.com25SQL*PLUSORACLE*FORMSORACLE*REPORTSQL*GRAPHICSQL*CALC用户编制的程序程序接口(SQL执行程序)ORACLE内核(RDBMS)操作系统数据字典DD数据库DB返回授人以鱼不如授人以渔朱明工作室zhubob@21cn.com26二、Sybase数据库(一)Sybase数据库的技术特点Sybase数据库管理系统的技术特点完全的客户机/服务器体系结构采用单进程多线索技术支持存储过程虚服务器体系结构与对称多处理器技术结合DBA在线调整监控数据库系统的性能提供日志与数据库的镜象支持计算机簇族环境下的快速故障切换通过存储和触发器由服务器制约数据的完整性多种安全机制对表、视图、存储过程、命令进行授权分布式事务处理采用2PC(TWOPHASECOMMIT)技术授人以鱼不如授人以渔朱明工作室zhubob@21cn.com27Sybase的客户/服务体系在Sybase客户/服务器体系结构中,网络环境上的软件被明确地划分为三个部分:客户软件--SybaseSQLToolset服务器软件--SybaseSQLServer接口软件--SybaseClient/ServerInterface(二)Sybase数据库的产品组成SQLServer10(数据库管理系统的核心)ReplicationServer(实现数据库分布的服务器)BackupServer(网络环境下的快速备份服务器)OMINISQLGateway(异构数据库库关)NavigationServer(网络上可扩充的并行处理能力服务器)ControlServer(数据库管理员服务器)返回授人以鱼不如授人以渔朱明工作室zhubob@21cn.com28三、MSSQLServer数据库(一)MSSQLServer数据库的技术特点可看作是WindowsN