数据库技术及应用课件_第1页
数据库技术及应用课件_第2页
数据库技术及应用课件_第3页
数据库技术及应用课件_第4页
数据库技术及应用课件_第5页
已阅读5页,还剩140页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

数据库技术及应用矿物2007学习内容:※1、掌握数据库相关的基本概念2、了解数据管理技术发展的各个阶段

3、了解数据库管理系统的发展※4、掌握数据库系统的体系结构第一章绪论1.1基本概念1.数据2.数据库5.数据库系统3.数据库管理系统4.数据库应用系统DBDBMS应用程序1应用程序2用户1用户2图1.1数据库系统构成DBA开发工具程序员系统分析员学生信息,课程信息Oracle数据库学生管理程序教务管理程序学生处教务处图1.1数据库系统构成DBAVB程序程序员系统分析员数据库操作系统DBMS,开发工具软件应用程序图1.2数据库的软硬件结构硬件DB1.2数据管理技术发展过程人工管理阶段文件系统阶段数据库系统阶段程序1程序2程序n数据1数据n数据2图1.4人工管理阶段程序与数据间的联系程序1程序2程序n文件1文件n文件2存取方案图1.5文件系统阶段程序与数据间的联系DBMS数据3数据1数据2程序1程序2程序n图1.6数据库系统阶段程序与数据间的联系院系学号姓名性别年龄专业年级政治面貌家庭住址个人履历社会关系院系学号姓名性别年龄专业年级课名成绩学分图1.7文件记录学生信息院系学号姓名性别年龄专业年级身高体重健康状况病理记录F1F2F3F1学生处F2教务处F3卫生院图1.8数据库记录学生信息图1.9单用户结构数据库体系结构图1.10主从式结构数据库体系结构DBDB图1.11分布式结构数据库体系结构DB网络DB客户机服务器图1.12集中式客户机/服务器结构数据库体系结构DB客户机服务器图1.13分布式客户机/服务器结构数据库体系结构DB图1.15三级模式结构出版社名称字符型20书名字符型20作者姓名字符型20出版社名称字符型20书名字符型20类型字符型1作者姓名字符型20书名字符型20图书信息作者著书信息出版社出书信息作者编号字符型5作者姓名字符型20通信地址字符型50邮编字符型6电话字符型11出版社编号520出版社名称字符型20城市字符型20书号字符型6书名字符型20类型字符型1价格货币出版日期日期型数据文件索引文件数据文件索引文件数据文件索引文件外模式模式内模式图1.16三级模式结构例子第三章实体联系模型学习目标掌握数据概念模型的相关概念及其E-R模型表示方法;掌握数据模型概念及其组成要素;了解常用的三种数据模型;掌握关系模型及其基本概念;掌握关系代数的运算。学习重点数据及其三要素;概念模型及其E-R表示方法;关系模型基本概念;关系的基本运算。学习难点概念模型的E-R表示方法;关系的基本运算。2.1概念模型2.1.1基本概念1.实体2.属性3.码4.域5.实体型6.实体集2.1.2实体之间联系1.两个实体集之间的联系(1)1:1联系(2)1:n联系(3)m:n联系班长任职班级11班级学习学生1n学生选修课程mm2.两个以上实体集间的联系(1)1:1联系学生拥有身份证11学生证1(2)1:n联系教师指导毕业生1m设计题目n(3)m:n联系厂家生产产品mn零件p3.实体内部的联系夫妻人(1)1:1联系(2)1:n联系(3)m:n联系11父子人1n选修课课程mn2.1.3概念模型表示方法(E-R模型法)教师开课学生课程选修教师号职称性别姓名学号姓名性别年龄分数课程号课程名选课管理E-R图mnnm讲授mn练习题:1、某大学下设若干学院,每个学院有多个系,每个系有多名教师,每名教师都属于且只能属于一个系。一个教师可以参与一个或多个横向或纵向项目,每个项目只有一个负责人,同一个项目可以有多个教师参与,教师也可以不参与任何一个项目。学院的信息包括编号、名称、人数和建立日期等,系的信息包括系名,系的人数和联系电话等。教师的信息包括工作证号、姓名、性别、年龄、职称、学位和家庭住址等。项目的信息包括编号、题目、开始日期、时限、经费等。2、某大学一学院的教务科记录着本学院可以开设的所有课程信息,包括编号、名称、学时、学分等。每个课程有零门或多门先修课程,一个课程也可以作为零门或多门其他课程的先修课程。每门课程可以作为一个整体讲授,也可以分成几个主题分别讲授。每个主题的信息包括主题编号、名称、学时数等。3、大学里的每个研究生和博士生都有自己的导师,研究生的导师可以是副教授或教授,博士生的导师必须是教授。不是所有教授或副教授都带研究生或博士生。研究生的信息包括学号、姓名、年龄、录取类别等,博士生的信息包括学号、姓名、性别、年龄、婚姻状况和是否在职等。教授的信息包括工作证号、姓名、年龄、性别、是否博导、晋升日期等,副教授的信息包括工作证号、姓名、年龄等。5.3.1关系代数1.选择运算学号姓名性别年龄院系号0001王丽女16010002张红女18010003孙男男16020004李强男17030005赵雨男1603学号姓名性别年龄院系号0001王丽女16010003孙男男16020005赵雨男1603学生(学号,姓名,性别,年龄,院系号)学号姓名性别年龄院系号0003孙男男16020005赵雨男1603学号姓名性别年龄院系号0001王丽女16010002张红女18010004李强男17030005赵雨男16032.投影运算学号姓名性别年龄院系号0001王丽女16010002张红女17010003孙男男16020004李强男17030005赵雨男1603姓名年龄王丽16张红17孙男16李强17赵雨16学号姓名性别年龄院系号0001王丽女16010002张红女17010003孙男男18020004李强男17030005赵雨男16030006王一女19030007李娜女20040008李想女18040009张丽女1705学号姓名0003孙男0006王一0007李娜0008李想学号姓名性别年龄院系号0001王丽女16010002张红女17010003孙男男18020004李强男17030005赵雨男16030006王一女19030007李娜女20040008李想女18040009张丽女1705姓名年龄孙男18王一19李娜20李想183.并运算(rUs)rsD1D2x1y1x2y2D1D2x1y1x2y2x3y3rsrUsT1T2x3y3x2y2学号姓名性别年龄院系号0001王丽女16010002张红女17010003孙男男18020004李强男17030005赵雨男16030006王一女19030007李娜女20040008李想女18040009张丽女1705姓名院系号王丽01张红01孙男02王一03李娜04李想04张丽054.笛卡尔积(r×s)D1D2D3x1y1z1x2y2z2S1S2k1p1k2p2k3p3D1D2D3S1S2x1y1z1k1p1x1y1z1k2p2x1y1z1k3p3x2y2z2k1p1x2y2z2k2p2x2y2z2k3p3rsr×s学号姓名年龄001王一14002张永16课程号课程名01化学02几何03外语学生表课程表学生表X课程表学号姓名年龄课程号课程名001王一1401化学001王一1402几何001王一1403外语002张永1601化学002张永1602几何002张永1603外语学号姓名性别年龄院系号0001王丽女16010002张红女17010003孙男男18020004李强男17030005赵雨男16030006王一女19030007李娜女20040008李想女18040009张丽女1705院系号人数专业数院长0110005李0212006安0315006战0413005王0511004吴院系号0104055、差(r-s)6.交r∩sRSD1D2x1y1x2y2D1D2x2y2rsB1B2x3y3x2y2r∩s学号姓名性别年龄院系号0001王丽女16010002张红女17010003孙男男18020004李强男17030005赵雨男16030006王一女19030007李娜女20040008李想女18040009张丽女1705院系号人数专业数院长0110005李0212006安0315006战0413005王0511004吴院系号03047.连接运算学号姓名性别年龄院系号0001王丽女16010002张红女17010003孙男男1602课程号课程名院系号学分001外语013002语文012003物理021004数据库033rs学号姓名性别年龄院系号课程号课程名院系号学分0001王丽女1601001外语0130001王丽女1601002语文0120002张红女1701001外语0130002张红女1701002语文0120003孙男男1602003物理021r.院系号=s.院系号rs(1)连接学号姓名性别年龄院系号0001王丽女16010002张红女17010003孙男男1602课程号课程名院系号学分001外语013002语文012003物理021004数据库033rs学号姓名性别年龄院系号课程号课程名院系号学分0001王丽女1601003物理0210001王丽女1601004数据库0330002张红女1701003物理0210002张红女1701004数据库0330003孙男男1602001外语0130003孙男男1602002语文0120003孙男男1602004数据库033rsr.院系号s.院系号产品编号名称成本0001产品1120002产品2130003产品320零件号名称成本售价001零件1512002零件2412003零件3410004零件439rs产品编号名称成本零件号名称成本售价0001产品112001零件15120001产品112001零件2512rsr.成本=s.售价学号姓名性别年龄院系号0001王丽女16010002张红女17010003孙男男18020004李强男17030005赵雨男16030006王一女19030007李娜女20040008李想女18040009张丽女1705院系号人数专业数院长0110005李0212006安0315006战0413005王0511004吴(2)自然连接学号姓名性别年龄院系号人数专业数院长0001王丽女160110005李0002张红女170110005李0003孙男男180212006安0004李强男170315006战0005赵雨男160315006战0006王一女190315006战0007李娜女200413005王0008李想女180413005王0009张丽女170511004吴rs8、外连接学号姓名年龄院系政治面貌0001于小非19数学系团员0002于丹18语文系党员0003马丽丽19数学系团员0004马红20英语系团员0005王小小21英语系党员0006王姗姗21数学系团员学号课程号成绩0001019000010298000201——000203870003025600040176学号姓名课程号0001于小非010001于小非020002于丹010002于丹030003马丽丽020004马红010005王小小0006王姗姗学生表r选课表sr.学号=s.学号(1)左连接(2)右连接学号姓名年龄院系政治面貌0001于小非19数学系团员0002于丹18语文系党员0003马丽丽19数学系团员0004马红20英语系团员0005王小小21英语系党员0006王姗姗21数学系团员学号课程号成绩0001019000010298000201——000203870003025600040176学号课程号姓名000101于小非000102于小非000201于丹000203于丹000302马丽丽000401马红0005王小小0006王姗姗学生表r选课表sr.学号=s.学号(3)全连接学号姓名年龄院系政治面貌0001于小非19数学系团员0002于丹18语文系党员0003马丽丽19数学系团员0004马红20英语系团员0005王小小21英语系党员0006王姗姗21数学系团员学号课程号成绩0001019000010298000201——00020387000302560004018900070376学号姓名课程号0001于小非010001于小非020002于丹010002于丹030003马丽丽020004马红010005王小小0006王姗姗000703学生表r选课表sr.学号=s.学号练习题一、选择题:1、通常所说的数据库系统(DBS)、数据库管理系统(DBMS)和数据库(DB)三者之间的关系是()A、DBMS包含DB和DBSB、DB包含DBMS和DBSC、DBS包含DBMS和DBD、三者无关2、在数据库的三级模式结构中,描述数据库全局逻辑结构和特性的是:A、外模式B、内模式C、存储模式D、模式3、一般的,一个数据库系统的外模式:A、只能有一个B、最多只能有一个C、至少两个D、可以有多个4、模式和内模式:A、只能有一个B、最多只能有一个C、至少两个D、可以有多个5、DBMS是:A、操作系统的一部分B、在操作系统支持下的系统软件C、一种编译程序D、应用程序系统6、下列3个模式之间存在的映像关系正确的是:A、外模式/内模式B、外模式/模式C、外模式/外模式D、模式/模式7、数据库三级模式体系结构的划分,有利于保持数据库的:A、数据独立性B、数据安全性C、结构规范性D、操作可行性8、数据库系统的数据独立性是指:A、不会因为数据的数值变化而影响应用程序B、不会因为系统数据存储结构与数据逻辑结构的变化而影响应用程序C、不会因为存储策略的变化而影响存储结构D、不会因为某些存储结构的变化而影响其他的存储结构9、数据库管理系统通常提供授权功能来控制不同用户访问数据的权限,这主要是为了实现数据库的:A、可靠性B、一致性C、完整性D、安全性10、在数据库体系结构中,数据库存储的改变会引起内模式的改变。为使数据库的模式保持不变,从而不必修改应用程序,必须通过改变模式与内模式之间的映像来实现。这样,使数据库具有:A、数据独立性B、逻辑独立性C、物理独立性D、操作独立性11、不同实体是根据()区分的。

A、代表的对象B、名字C、属性多少D、属性的不同12、一个数据库系统必须能表示实体和联系,联系有关的实体有()

A、0B、1C、2D、1个或1个以上13、E-R模型是数据库设计的工具之一,它一般适用于建立数据库的()

A、概念模型B、结构模型C、物理模型D、逻辑模型14、若D1={a1,a2,a3},D2={b1,b2,b3},则D1XD2集合中共有元祖()个

A、6B、8C、9D、1215、在关系数据库系统中,一个关系相当于()A、一张二维表B、一条记录C、一个关系数据库D、一个关系代数运算16、关系数据库中的候选键是指:A、能唯一决定关系的字段B、不可改动的专用保留字C、关键的很重要的字段D、能唯一标识元组的属性或属性组17、在关系R(R#,RN,S#)和S(S#,SN,SD)中,R的主码是R#,S的主码是S#,则S#在R中称为:A、外码B、候选键C、主码D、超码18、把关系看成二维表,则下列说法不正确的是:A、表中允许出现相同的行B、表中不允许出现相同的行C、行的次序可以交换D、列的次序可以交换19、有两个关系R和S,分别包含15个和10个元组,则在RUS,R-S,RS中不可能出现的元组数目情况是:A、15,5,10B、18,7,7C、21,11,4D、25,15,020、参加差运算的两个关系()A、属性个数可以不相同B、属性个数必须相同C、一个关系包含另一个关系的属性D、属性名必须相同21、两个关系在没有公共属性时,其自然连接操作表现为:A、结果为空关系B、笛卡尔积操作C、等值连接操作D、无意义的操作22、对一个关系做投影操作后,新关系的元数个数()原来关系的元数个数。A、小于B、小于或等于C、等于D、大于23、选取关系中满足某个条件的元组的关系代数运算称为()A、选中运算B、选择运算C、投影运算D、搜索运算二、设计E-R图1、某医院病房计算机管理中需如下信息:科室:科名、科地址、科电话、医生姓名病房:病房号、床位数、所属科室名医生:姓名、职称、所属科室名、年龄、工作证号病人:病历号、姓名、性别、诊断医生、病房号其中,一个科室有多个病房、多个医生,一个病房只能属于一个科室,一个医生只属于一个科室,但可负责多个病人的诊治,一个病人的主治医生只有一个。一个病房可以住多个病人。2、学校有若干个系,每个系有若干名教师和学生;每个教师可以教授若干门课程,并参加多个项目;每个学生可以同时选修多门课程。各个实体的属性如下:系(系编号,系名,系主任)教师(教师编号,教师姓名,职称)学生(学号,姓名,性别,班号)项目(项目编号,名称,负责人)课程(课程编号,课程名,学分)请设计该实体联系模型。三、关系代数计算1、设有关系R和SABabdccbBCbccabd计算RS、RS和B<CRS2、设有关系R和SABCabcbafcbdABCbafdafRS计算R-S、RUS、RXS第七章关系数据库的规范化理论编号姓名性别年龄联系电话部门号部门名部门电话0001王丽女271392345679B101沈阳红女301312345634B101沈阳男男341359075455B101沈阳强男341364678778B102鞍山部0412-450005赵雨男311316757657B102鞍山部0412-450006王一女291304548678B103辽阳部0419-637.1更新异常问题7.2函数依赖7.3范式7.3.11NF7.3.22NF编号姓名性别年龄联系电话部门号部门名部门电话0001王丽女271392345679B101沈阳丽女276754321B101沈阳红女301312345634B101沈阳红女305643786B101沈阳男男341359075455B101沈阳男男348769534B101沈阳强男341364678778B102鞍山部0412-450004李强男346785640B102鞍山部0412-450005赵雨男311316757657B102鞍山部0412-450005赵雨男315212365B102鞍山部0412-450006王一女291304548678B103辽阳部0419-630006王一女295745612B103辽阳部0419-63解决方法:编号姓名性别年龄部门号部门名部门电话0001王丽女27B101沈阳红女30B101沈阳男男34B101沈阳强男34B102鞍山部0412-450005赵雨男31B102鞍山部0412-450006王一女29B103辽阳部0419-63编号电话号码编号电话号码编号电话号码0001139234567900031359075455000513167576570001675432100038769534000552123650002131234563400041364678778000613045486780002564378600046785640000657456127.3.33NF7.3.4BCNF编号姓名性别年龄部门号0001王丽女27B1010002张红女30B1010003孙男男34B1010004李强男34B1020005赵雨男31B1020006王一女29B103部门号部门名部门电话B001沈阳部024-123B002鞍山部0412-45B003辽阳部0419-63化成3NF范式:订单号顾客号销售员编号日期A010001X00197/8/9A010001X00297/8/9A020001X00197/8/9A020001X00397/8/9A030003X00298/5/7A030003X00498/5/7例:下表是否属于BCNF范式?订单号顾客号日期A01000197/8/9A02000197/8/9A03000398/5/7订单号销售员号A01X001A01X002A02X001A02X003A03X002A03X004化成BCNF范式:练习1已知某书店有如下关系表所示书号书名出版社名地址价格101编译原理电子工业出版社北京20102操作系统机械工业出版社北京21103软件工程上海交通大学出版社上海18104数据库原理电子工业出版社北京32105数据结构华中科技大学出版社武汉34106汇编语言机械工业出版社北京26107微机原理上海交通大学出版社上海35问题:(1)该关系表为第几范式?(2)分解关系为更高一级的范式mm练习2已知如下实体联系模型,请转化成关系模型,并判断该范式属于第几范式,然后化成更高级范式。图书信息图书号类别ID类别说明出版社ID出版社名出版社地址书名作者价格索书号时间简介读者信息读者号姓名密码性别职称单位专业年级电话地址借阅借阅时间还书时间第九章SQL语言学习目标掌握SQL语法学习重点SQL的数据定义,数据操纵,数据控制的功能学习难点SQL检索数据的功能9.1数据库查询SELECT[DISTINCT]{*|目标列[,目标列…]}AS新列名FROM表名[,表名…][WHERE条件表达式][GROUPBY列名[,列名…]][HAVING条件表达式][ORDERBY列名[ASC|DESC][,列名[ASC|DESC]…]9.1.1简单查询pcodeptypepnamecostprice101足球类足球¥85¥110102足球类手套¥90¥122201羽毛球类羽球鞋¥28¥38202羽毛球类球拍¥200¥250301游泳类泳镜¥85¥102302游泳类泳帽¥50¥63401健美类拉力器¥41¥55402健美类十磅哑铃¥70¥92403健美类跳绳

¥20Product

order

ordernocustnoorderdatedelivdate21100012002-1-52002-1-522100022002-1-152002-1-1623100032002-2-102002-2-1024100022002-3-42002-3-5orderdetail订单号产品代码数量折扣211011000.0521102600212022000.12230110000.2522302100002320220024101200024401800022440350003.2.1单表查询1.简单查询(1)查询表中的一列或多列SELECT列名1,列名2…FROM表名(2)查询表中所有信息SELECT*FROM表名(3)去掉重复行SELECTDISTINCT列名1,列名2…FROM表名(4)计算查询SELECT列名1,列名2,表达式1as列名3,表达式2as列名4…FROM表名2WHERE查询(1)条件查询SELECT列名1,列名2…FROM表名WHERE条件(=,>,>=,<,<=,<>)SELECT列名1,列名2…FROM表名WHERE列名[NOT]BETWEEN值1AND值2(3)NI查询SELECT列名1,列名2…FROM表名WHERE列名[NOT]IN(值1,值2…)(4)[NOT]IS查询SELECT列名1,列名2…FROM表名WHERE列名[NOT]IS表达式(4)LIKE查询SELECT列名1,列名2…FROM表名WHERE列名LIKE匹配字符(1)条件查询(2)[NOT]BETWEENAND查询3.排序查询(ORDERBY)SELECT列名1,列名2…FROM表名ORDERBY列名ASC/DESC4.分组查询(GROUPBY)SELECT列名1,列名2,函数…FROM表名GROUPBY列名HAVING条件3.2.2多表查询1.内连接查询格式1:SELECT表1.列1,表2.列2…FROM表名1,表名2[WHERE表名1.列1=表名2.列2]格式2:SELECT别名1.列1,别名.列2…FROM表名1别名,表名2别名[WHERE别名1.列1=别名2.列2]3.2.2连接查询1.内连接查询学号姓名年龄院系政治面貌0001于小非19数学系团员0002于丹18语文系党员0003马丽丽19数学系团员0004马红20英语系团员0005王小小21英语系党员0006王姗姗21数学系团员学号课程号成绩0001019000010298000201——000203870003025600040176学生表选课表学号姓名课程号0001于小非010001于小非020002于丹010002于丹030003马丽丽020004马红01按学号内连接结果2.外连接查询(1)左连接SELECT别名1.列1,别名2.列2…FROM表名1别名1LETFOUTERJOIN表名2别名2ON条件(2)右连接SELECT别名1.列1,别名2.列2…FROM表名1别名1RIGHTOUTERJOIN表名2别名2ON条件2.外连接(左连接,右连接)查询学号姓名年龄院系政治面貌0001于小非19数学系团员0002于丹18语文系党员0003马丽丽19数学系团员0004马红20英语系团员0005王小小21英语系党员0006王姗姗21数学系团员学号课程号成绩0001019000010298000201——000203870003025600040176学生表选课表学号姓名课程号0001于小非010001于小非020002于丹010002于丹030003马丽丽020004马红010005王小小0006王姗姗按学号外连接结果学号姓名年龄院系政治面貌0001于小非19数学系团员0002于丹18语文系党员0003马丽丽19数学系团员0004马红20英语系团员0005王小小21英语系党员0006王姗姗21数学系团员学号课程号成绩0001019000010298000201——000203870003025600040176课程号课名教师01数学A02语文B03英语C04物理D05化学E学生表选课表所有课程的选择情况课程表学号课程号课程名000101数学000102语文000201数学000203英语000302语文000401数学04物理05化学2.自连接查询部门号部门名上级部门号01教务办0202教务科0303教务处04综合办0505师资科0606人事处部门号部门名上级部门号01教务办0202教务科0303教务处04综合办0505师资科0606人事处部门号部门名上两级部门号上两级部门名01教务办03教务处04综合办06人事处部门表部门表自连接结果3.复合连接查询学号姓名年龄院系政治面貌0001于小非19数学系团员0002于丹18语文系党员0003马丽丽19数学系团员0004马红20英语系团员0005王小小21英语系党员0006王姗姗21数学系团员学号课程号成绩0001019000010298000201——000203870003025600040176课程号课名教师01数学A02语文B03英语C04物理D05化学E学生表选课表多个表连接结果课程表学号课程号成绩教师00010190A000201A00040176A学号姓名年龄院系政治面貌0001于小非19数学系团员0002于丹18语文系党员0003马丽丽19数学系团员0004马红20英语系团员0005王小小21英语系党员0006王姗姗21数学系团员学生表学号姓名0005王小小0006王姗姗3.2.3子查询(嵌套查询)求年龄最大的学生学号姓名年龄院系政治面貌0001于小非19数学系团员0002于丹18语文系党员0003马丽丽19数学系团员0004马红20英语系团员0005王小小21英语系党员0006王姗姗21数学系团员学号课程号成绩0001019000010298000201——000203870003025600040176课程号课名教师01数学A02语文B03英语C04物理D05化学E学生表选课表选修数学课的学生号和姓名课程表学号姓名0001于小非0002于丹0004马红3.2.3子查询学号姓名年龄院系政治面貌0001于小非19数学系团员0002于丹18语文系党员0003马丽丽19数学系团员0004马红20英语系团员0005王小小21英语系党员0006王姗姗21数学系团员学号课程号成绩0001019000010298000201——000203870003025600040176学生表选课表选修01号课程的学生号和姓名学号姓名0001于小非0002于丹0004马红3.2.3相关子查询(EXISTS)学号姓名年龄院系政治面貌0001于小非19数学系团员0002于丹18语文系党员0003马丽丽19数学系团员0004马红20英语系团员0005王小小21英语系党员0006王姗姗21数学系团员学号姓名年龄院系政治面貌0001于小非19数学系团员0003马丽丽19数学系团员0005王小小21英语系党员0006王姗姗21数学系团员学生表求数学系的学生和年龄大于20的学生信息3.2.5集合查询(1)UNION查询(并操作)学号姓名年龄院系政治面貌0001于小非19数学系团员0002于丹18语文系党员0003马丽丽19数学系团员0004马红20英语系团员0005王小小21英语系党员0006王姗姗21数学系团员学号姓名年龄院系政治面貌0001于小非19数学系团员0003马丽丽19数学系团员学生表求数学系的学生且年龄等于19的学生信息3.2.4集合查询(2)INTERSECT查询学号姓名年龄院系政治面貌0001于小非19数学系团员0002于丹18语文系党员0003马丽丽19数学系团员0004马红20英语系团员0005王小小21英语系党员0006王姗姗21数学系团员学号姓名年龄院系政治面貌0006王姗姗21数学系团员学生表求数学系的学生且年龄不等于19的学生信息3.2.4集合查询(3)EXCEPT查询3.3数据更新3.3.1数据插入(INSERT)格式:INSERTINTO表名[(列名1,列名2,…)]VALUES(常量1,常量2,…);1.插入一个元组格式:INSERTINTO表名[(列名1,列名2,…)]子查询;2.插入一个子查询结果学号姓名年龄院系政治面貌0001于小非19数学系团员0002于丹18语文系党员0003马丽丽19数学系团员0004马红20英语系团员0005王小小21英语系党员0006王姗姗21数学系团员学号姓名年龄院系政治面貌0001于小非19数学系团员0002于丹18语文系党员0003马丽丽19数学系团员0004马红20英语系团员0005王小小21英语系党员0006王姗姗21数学系团员0007李明22语文系团员学生表插入一个元组学号姓名年龄院系政治面貌0001于小非19数学系团员0002于丹18语文系党员0003马丽丽19数学系团员0004马红20英语系团员0005王小小21英语系党员0006王姗姗21数学系团员学号姓名年龄院系政治面貌0001于小非19数学系团员0002于丹18语文系党员0003马丽丽19数学系团员0004马红20英语系团员0005王小小21英语系党员0006王姗姗21数学系团员0007李明语文系学生表插入一个元组3.3数据更新3.3.2数据修改(UPDATE)格式:UPDATE表名SET列名1=表达式1,字段2=表达式2,…[WHERE条件]学号姓名年龄院系政治面貌0001于小非19数学系团员0002于丹18语文系党员0003马丽丽19数学系团员0004马红20英语系团员0005王小小21英语系党员0006王姗姗21数学系团员学号姓名年龄院系政治面貌0001于小飞19数学系团员0002于丹18语文系党员0003马丽丽19数学系团员0004马红20英语系团员0005王小小21英语系党员0006王姗姗21数学系团员学生表1.修改一个元组修改0001号学生姓名学号姓名年龄院系政治面貌0001于小非19数学系团员0002于丹18语文系党员0003马丽丽19数学系团员0004马红20英语系团员0005王小小21英语系党员0006王姗姗21数学系团员学号姓名年龄院系政治面貌0001于小非19数学系党员0002于丹18语文系党员0003马丽丽19数学系党员0004马红20英语系党员0005王小小21英语系党员0006王姗姗21数学系党员学生表2.修改多个元组修改所有学生的政治面貌学号姓名年龄院系政治面貌0001于小非19数学系团员0002于丹18语文系党员0003马丽丽19数学系团员0004马红20英语系团员0005王小小21英语系党员0006王姗姗21数学系团员学号课程号成绩0001019000010298000201——000203870003025600040176学号课程号成绩00010100001020000201——00020387000302000040176学生表选课表3.子查询的更新数学系的学生成绩改为0学号姓名年龄院系政治面貌0001于小非19数学系团员0002于丹18语文系党员0003马丽丽19数学系团员0004马红20英语系团员0005王小小21英语系党员0006王姗姗21数学系团员学号课程号成绩0001019000010298000201——000203870003025600040176课程号课名教师01数学A02语文B03英语C04物理D05化学E学生表选课表所有学生数学课成绩为0课程表学号课程号成绩0001010000102980002010000203870003025600040103.3数据更新3.3.3数据删除(DELETE)格式:DELETEFROM表名[WHERE条件]学号姓名年龄院系政治面貌0001于小非19数学系团员0002于丹18语文系党员0003马丽丽19数学系团员0004马红20英语系团员0005王小小21英语系党员0006王姗姗21数学系团员学号姓名年龄院系政治面貌0001于小非19数学系团员0002于丹18语文系党员0003马丽丽19数学系团员0004马红20英语系团员0005王小小21英语系党员学生表删除一个元组1.删除一个元组学号姓名年龄院系政治面貌0001于小非19数学系团员0002于丹18语文系党员0003马丽丽19数学系团员0004马红20英语系团员0005王小小21英语系党员0006王姗姗21数学系团员学号姓名年龄院系政治面貌学生表删除表中所有元组1.删除表中所有元组学号姓名年龄院系政治面貌0001于小非19数学系团员0002于丹18语文系党员0003马丽丽19数学系团员0004马红20英语系团员0005王小小21英语系党员0006王姗姗21数学系团员学号课程号成绩0001019000010298000201——000203870003025600040176学号课程号成绩000102980002038700030256学生表选课表3.子查询的删除删除数学系学生选课记录3.4视图●视图是从一个或几个基本表(或视图)导出的表,它与基本表不同,是一个虚表,只放视图定义,不存放对应的数据,数据仍在原来的基本表中。●基本表中数据发生变化,从视图中查询出的数据也随着变化了。●视图可以和基本表一样被查询、删除,也可在其基础上再定义新视图,但对视图的更新有一定的限制。现有图书管理数据库的三个关系模式:图书(总编号,分类号,书名,作者,出版单位,单价)读者(借书证号,单位,姓名,性别,职称,地址)借阅(借书证号,总编号,借书日期)1.创建图书、读者和借阅三个基本表的表结构:2.在三个表中分别插入以下所给元组:Mis数据库练习题总编号分类号书名作者出版单位单价445501TP3/12数据库导论王强科学出版社17.90445502TP3/12数据库导论王强科学出版社17.90445503TP3/12数据库导论王强科学出版社17.90332211TP5/10计算机基础李伟高等教育出版社18.00112266TP3/12FoxBASE张三电子工业出版社23.60665544TS7/21高等数学刘明高等教育出版社20.00114455TR9/12线性代数孙业北京大学出版社20.80113388TR7/90大学英语胡玲清华大学出版社12.50446601TP4/13数据库基础马凌云人民邮电出版社22.50446602TP4/13数据库基础马凌云人民邮电出版社22.50446603TP4/13数据库基础马凌云人民邮电出版社22.50449901TP4/14FoxPro大全周虹科学出版社32.70449902TP4/14FoxPro大全周虹科学出版社32.70118801TP4/15计算机网络黄力钧高等教育出版社21.80118802TP4/15计算机网络黄力钧高等教育出版社21.80

图书表读者表借书证号单位姓名性别职称地址111信息系王维利女教授1号楼424112财会系李

立男副教授2号楼316113经济系张

三男讲师3号楼105114信息系周华发男讲师1号楼316115信息系赵正义男工程师1号楼224116信息系李

明男副教授1号楼318117计算机系李小峰男助教1号楼214118计算机系许鹏飞男助工1号楼216119计算机系刘大龙男教授1号楼318120国际贸易李

雪男副教授4号楼506121国际贸易李

爽女讲师4号楼510122国际贸易王

纯女讲师4号楼512123财会系沈小霞女助教2号楼202124财会系朱

海男讲师2号楼210125财会系马英明男副教授2号楼212借阅表借书证号总编号借书日期1124455011997-3-191253322111997-2-121114455031997-8-211121122661997-3-141146655441997-10-211201144551997-11-21201188011997-10-181194466031997-12-121124499011997-10-231154499021997-8-211181188011997-9-101)

找出姓李的读者姓名和所在单位。2)

列出图书库中所有藏书的书名及出版单位。3)

查找高等教育出版社的所有图书及单价,结果按单价降序排序。4)

查找价格介于10元和20元之间的图书,并按单价升序排序。5)

查找书名以计算机打头的所有图书和作者。6)

检索同时借阅了总编号为445501和449901两本书的借书证号。7)

查找所有借了书的读者的姓名及所在单位。8)

找出李某所借图书的所有图书的书名及借书日期。9)

查询1997年10月以后借书的读者借书证号、姓名和单位。10)

找出借阅了FoxPro大全一书的借书证号。11)

找出与赵正义在同一天借书的读者姓名、所在单位及借书日期。12)

查询1997年7月以后没有借书的读者借书证号、姓名及单位。13)

求科学出版社图书的最高单价、最低单价、平均单价。14)

求信息系当前借阅图书的读者人次数。15)

求出各个出版社图书的最高价格、最低价格和册数。16)

分别找出各单位当前借阅图书的读者人数。17)

找出当前至少借阅了2本图书的读者及所在单位。18)

分别找出借书人次超过1人次的单位及人次数。19)

找出藏书中各个出版单位的册数、价值总额。20)

查询经济系是否还清所有图书第四章规范化理论4.1问题的提出学号姓名年龄院系院长课程号课程名授课教师成绩0001于小非19计算机张建01数据库A900001于小非19计算机张建02岩土力学B920001于小非19计算机张建03数据结构C800002于丹18材料李阳01数据库A780002于丹18材料李阳04金属加工D890003马丽丽19机械徐涛02岩土力学B850004马红20经管王利梅03数据结构C790004马红20经管王利梅01数据库A790004马红20经管王利梅05企业管理E800005王小小21数理佟成01数据库A900005王小小21数理佟成03数据结构C790005王小小21数理佟成06高等数学F954.2规范化理论定义1设R<U,F>是属性集U上的关系模式,X,Y是U的子集,X能确定Y,则称Y函数依赖于X,记作X→Y,如果X不能确定Y,则记作XY4.2.1函数依赖定义2在R<U,F>中,如果X→Y,并且对于X的任何一个真子集X’,都有X’Y,则称Y对X完全函数依赖,记作XYf定义3在R<U,F>中,如果X→Y,YX,Y→Z,则称Z对X传递函数依赖4.2.2范式第一范式:关系R中每一个分量是不可分的数据项,则关系R∈1NF第二范式:若R∈1NF,且每个非主属性完全依赖于码,则R∈2NF第三范式:若R∈2NF,且每个非主属性不传递依赖于码,则R∈3NF例4.1已知某书店有如下关系表所示书号书名出版社名地址价格101编译原理电子工业出版社北京20102操作系统机械工业出版社北京21103软件工程上海交通大学出版社上海18104数据库原理电子工业出版社北京32105数据结构华中科技大学出版社武汉34106汇编语言机械工业出版社北京26107微机原理上海交通大学出版社上海35问题:(1)该关系表为第几范式?(2)是否存在操作异常?(3)分解关系为更高一级的范式例4.2在一个公司的信息库中有部门、职工、生产科研项目、办公室信息等数据。对每个部门,数据库中包含部门号(唯一的),预算费用以及此部门部长的职工号(唯一的)。对每个部门,还有关于此部门的全部职工,生产科研项目以及办公室的信息。职工信息包括:职工号、他所参加的生产科研项目号、他所在办公室的电话号、曾担任过的职务以及担任每一职务时的工资历史。生产科研项目包括:项目号和预算费。办公室信息包括办公室号(唯一的)、面积、办公室中全部的电话号码以及每部电话的负责人。问题:把这个信息库中的数据表示成满足3NF的关系第五章数据库设计5.1数据库设计内容数据库设计包含两方面的内容:结构特性设计和行为特性设计。结构特性设计是指根据给定的应用环境进行数据库模式的设计。行为特性设计是指应用程序设计。5.2数据库设计特点(1)数据库设计是涉及多学科的综合技术

●计算机科学的基础知识和程序设计技术

●数据库的基本知识和数据库设计技术●软件工程的原理和方法●应用领域的知识(2)数据库设计是硬件、软件相结合(3)数据库设计具有反复性、试探性、应分步进行(4)数据库设计需要将结构设计和行为设计密切结合1、需求分析2、概念结构设计3、逻辑结构设计4、物理结构设计5、数据库实施6、数据库运行和维护5.3数据库设计步骤:5.3.1需求分析业务知识研究指定调研计划形成功能模块,需求文档(DFD,DD)调查组织机构总体情况调查各部门业务活动明确用户需求确定系统边界图5.1需求分析的过程系统名称功能模块11功能模块12功能模块21功能模块22

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论