您好,欢迎访问三七文档
北京邮电大学软件学院郭文明2003.06《数据库设计与开发》讲义《数据库设计与开发》北京邮电大学软件学院郭文明(guolyz@sohu.com)2003.06北京邮电大学软件学院郭文明2003.06《数据库设计与开发》讲义0.前言0.1数据库发展与应用0.2本课程内容0.3本课程学习方法0.4本课程参考资料北京邮电大学软件学院郭文明2003.06《数据库设计与开发》讲义0.1数据库发展与应用•数据库定义:数据库是数据管理的技术,数据管理是指对各种数据进行收集、存储、加工和传播的一系列活动的总和。包括对数据的分类、组织、编码、存储、检索和维护。•数据处理的发展:数据处理的发展过程经历了手工管理、文件管理、数据库三个阶段。•数据模型:数据库是建立在数据模型基础上的数据集合。数据模型有:层次模型、网状模型、关系模型、面向对象模型。比较成熟完善、市场占用率较大的是基于关系模型基础上的关系数据库。北京邮电大学软件学院郭文明2003.06《数据库设计与开发》讲义0.1数据库发展与应用•数据库管理系统:数据库管理系统是位于用户与操作系统之间的一层数据管理软件,属系统软件。•数据库管理系统的功能:数据定义(create、drop等);数据操纵(select、insert等);数据库运行(安全性、完整性、并发控制、故障恢复);数据库建立与维护(数据转储、数据恢复、性能监视、重组织)。•目前的一些数据库管理系统(DBMS),小型桌面数据库系统FoxPro,ACCESS,PRADOX等,大型数据库系统ORACLE,INFORMIX,SYBASE,DB2,MicrosoftSQLserver等。北京邮电大学软件学院郭文明2003.06《数据库设计与开发》讲义0.1数据库发展与应用•数据库的应用已越来越广泛。从小型的单项事务处理系统到大型复杂的信息系统大都用先进的数据库技术来保持系统数据的整体性、完整性和共享性。–1)电脑抽奖:采用数据库技术,不必修改程序,只变更奖项设置,即可应用于不同的抽奖活动。–2)招生考试:通过对数据库排序和索引,完成考生按志愿从高分到低分排列,根据学校招生计划录取,录满为止。–3)银行储蓄:为每个用户建立能够唯一识别的帐户,同时记录用户的往来明细,做到存储量大,运算速度快,准确程度高。北京邮电大学软件学院郭文明2003.06《数据库设计与开发》讲义0.1数据库发展与应用•企业(生产管理、质量管理、客户管理、财务管理、电子商务等);机关(办公自动化);金融(银行电子结算);证券(股票交易、行情分析);通讯(话费查询、费用结算);教育卫生(网上录取、学籍管理);社会保障(住房公积金、医疗保险、养老保险);政府(电子政务);交通(道路信息系统)等。•国民经济各个领域都离不开数据库技术,目前,一个国家的数据库建设规模(指数据库的个数、种类)、数据库信息量的大小和使用频度已成为衡量这个国家信息化程度的重要标志之一。北京邮电大学软件学院郭文明2003.06《数据库设计与开发》讲义0.1数据库发展与应用•数据库系统:数据库系统是指在计算机系统中引入数据库后的系统,一般由数据库、数据库管理系统、应用系统、DBA和用户构成。•数据库设计是建立数据库及其应用系统的技术,是信息系统开发和建设中的核心技术,具体说,数据库设计是指对于一个给定的应用环境,构造最优的数据库模式,建立数据库及其应用系统,使之能够有效地存储数据,满足各种用户的应用需求(信息要求和处理要求)。这个问题是数据库在应用领域的主要研究课题。•数据库技术研究领域:DBMS的研制、数据库设计、数据库理论。北京邮电大学软件学院郭文明2003.06《数据库设计与开发》讲义0.2本课程内容•1)关系数据库与对象关系数据库:建立在关系模型基础上的数据操纵,融合了面向对象思想的对象关系数据库和对象关系SQL。•2)数据存储和数据库管理:数据库常用的文件存储、索引技术、散列技术和多键访问技术等数据存储技术,保证数据库正常运行的安全性、完整性控制和数据库恢复。•3)数据库应用程序体系结构:访问数据库的程序,事务处理技术,Client/Server体系结构,多层体系结构,分布式数据处理和中间件。北京邮电大学软件学院郭文明2003.06《数据库设计与开发》讲义0.2本课程内容•4)ORACLE数据库:ORACLE数据库的体系结构,存储管理,实例管理;ORACLE数据库的规划与实施。•5)数据库设计:需求分析、概念模型设计、数据库逻辑设计和物理设计、功能设计、数据库实施、CASE技术;ER模型、规范化设计方法。•另外,通过实验环节进一步理解所讲内容,实验即选择一DBMS平台、设计一实际的数据库应用系统。完成实验需具备DBMS知识、程序设计开发能力、适当的专业领域知识。(实验要求另发)。北京邮电大学软件学院郭文明2003.06《数据库设计与开发》讲义0.3本课程学习方法•数据库设计与开发这一门课集理论性、技术性、艺术性为一体,学习过程中应根据这一些特点,针对性的采取一些措施。•1)从学习一个具体的数据库管理系统(DBMS)开始。理解数据管理的含义、理解数据库原理中的理论和方法。——离开具体的DBMS进行数据库设计是不完整的设计。•2)从熟悉一个具体的数据库应用系统开始。了解具体应用的领域知识和背景,结合DBMS的功能,探索利用DBMS为实际解决问题的过程。——离开深厚的领域知识,不可能设计出用户满意的数据库。北京邮电大学软件学院郭文明2003.06《数据库设计与开发》讲义0.3本课程学习方法•3)从使用一个具体的编成语言开始。明确理解在数据库设计和开发过程中,哪些功能由DBMS完成,哪些由程序完成。——没有编程经验,不可能设计出编程人员满意的数据库。•4)从DBA的角度学。数据库应用系统的运行离不开DBA的大力支持,数据库设计开发除满足一般用户要求之外,还应方便DBA的数据管理。——数据库系统的运行没有DBA的参与,数据库系统的设计开发可能会感觉特别费劲。•5)多学习、多实践、多思考才能集理论性、技术性、艺术性为一体。北京邮电大学软件学院郭文明2003.06《数据库设计与开发》讲义0.4本课程参考资料•1.数据库—原理、编程与性能,PatrickO’Neil著,周傲英等译,机械工业出版社,2002.01(DATABASEPrinciples,Programming,andPerformance.PatrickO’NeilElizabethO’neil,高等教育出版社,2001.05)•2.数据库设计教程,ThomasM.Connolly著,何玉洁等译,机械工业出版社,2003.06•3.Unix和Linux下的Oracle数据库管理,MichaelWesster著,王华驹等译,人民邮电出版社,2002.8•4.Oracle9iDBAFundamentalsI,ORACLEUniversity•5.数据库实用教程,丁宝康董健全,清华大学出版社,2001.09北京邮电大学软件学院郭文明2003.06《数据库设计与开发》讲义1.关系数据库与对象关系数据库•关系数据库管理系统(RDBMS)使用灵活,即使用户不是程序员,也可轻松快捷地写出一般的查询语句。关系数据库管理系统建立在关系模型基础之上。最近几年,一种更新的数据模型——对象-关系模型在许多产品中正逐渐取代关系模型。建立在对象—关系模型基础之上的数据库管理系统称为对象-关系数据库管理系统(ORDBMS)。对象-关系数据库管理系统也支持关系数据库管理系统中的数据。北京邮电大学软件学院郭文明2003.06《数据库设计与开发》讲义1.关系数据库与对象关系数据库•本章将介绍多年来支配数据表达方式的关系模型的概念和规则,从关系代数固有的查询能力方面介绍关系模型的特性,还要深入介绍工业标准SQL(SQL-99)语言。本章还将介绍对象-关系模型的特性和对象-关系SQL语法。1.1关系模型1.2关系代数1.3SQL1.4对象关系数据库北京邮电大学软件学院郭文明2003.06《数据库设计与开发》讲义1.1关系模型•1.1.1关系数据库举例•1.1.2关系数据模型–1.1.2.1域和数据类型–1.1.2.2表和关系–1.1.2.3关系规则•1.1.3数据模型•1.1.4最常用的数据模型北京邮电大学软件学院郭文明2003.06《数据库设计与开发》讲义1.1.1关系数据库举例•数据库是为了特殊目的存储在一起的相关数据记录的集合。关系数据库是按照关系模型组织存放数据的数据库。我们给出几个关系数据库的例子。–1)产品—代理—销售数据库(CAP)顾客从代理商那里批发大量商品然后自己转销,顾客其实是零售商。顾客向代理商要求购买商品,每次订货要求有完整的记录。–2)网上录取数据库(SCT)–3)房屋销售数据库(HEC)北京邮电大学软件学院郭文明2003.06《数据库设计与开发》讲义1)产品-代理-销售数据库(CAP)CUSTOMERS顾客信息表cid顾客IDcname顾客姓名city顾客所在城市discnt顾客可能会有的折扣AGENTS代理商信息表aid代理商IDaname代理商名称city代理商所在城市percent代理商每笔交易所能获得的佣金百分比PRODUCTS商品信息表pid商品IDpname商品名称city商品库存所在城市quantity商品库存数量price商品批发价ORDERS订单信息表ordno订单IDMonth订单月份cid顾客IDaid代理商IDpid商品IDqty数量dollars商品总价北京邮电大学软件学院郭文明2003.06《数据库设计与开发》讲义2)网上录取数据库(SCT)STUDENTS学生信息表Skh考号Sxm姓名Sxb性别Scsny出生年月Sdw生源地Syw语文Ssx数学Swy外语SxXSzof文化总分Szg照顾加分Szgf投档分Szy1一批志愿Scy1一批参志愿Szy2二批志愿Scy2二批参志愿Sbz标志(已投|在阅|录取|退档|死档等)Syx院校码Ssj时间COLLEGE院校信息表Cno院校码Cname院校名称Clb院校类别Cjh院校计划数Clq院校录取数Czy院校在阅数Ctd院校投档数TRACK投档轨迹表Skh考号Cno院校码Tbz标志Tsj时间北京邮电大学软件学院郭文明2003.06《数据库设计与开发》讲义2)网上录取数据库(SCT)运行机制•投档程序将考生按志愿从高分到低分排列,根据院校计划数和统一划定的重点院校、普通院校分数线进行投档:满足条件的考生其标志字段(Sbz)改为已投、其院校码字段(Syx)改为投档院校的编码;•院校根据投挡结果下载已投档到本学校的考生信息,此时考生其标志字段(Sbz)改为在阅;•院校通过阅读学生信息决定每一考生命运(录取、退档);•考生标志字段(Sbz)的每一次修改,都会相应修改COLLEGE中的相关字段值,并且在TRACK中留下痕迹。北京邮电大学软件学院郭文明2003.06《数据库设计与开发》讲义3)房屋销售数据库(HEC)问题•假设某房地产公司聘用多名业务员负责房地产的销售业务,每名客户可以多次或一次购买多套住房,每套住房有唯一的标识(房间号),每套房产交易都要签定合同,合同事例如下图所示:•试为该房地产公司设计一个关系数据库。合同号:01409090日期:02/02/03付款方式:一次性总金额:495000.00元客户身份证号:110102701104271客户姓名:王刚联系电话:88626868地址:北京市白石桥路188号邮政编码:100081房间号居室数建筑面积(m2)使用面积(m2)单价(元/m2)金额(元)1023110903300.00297000.00103278603300.00198000.00务员代码:23业务员姓名:李平电话号码:84128996北京邮电大学软件学院郭文明2003.06《数据库设计与开发》讲义3)房屋销售数据库(HEC)问题HOUSES房屋表房间号居室数使用面积单价销售合同号EMPLOYEES雇员表业务员代号业务员姓名电话号码CUSTOMERS客户信息表客户身份证号
本文标题:超市系统
链接地址:https://www.777doc.com/doc-1410095 .html