数据库课程设计+详解+答案
广东医学院数据库课程设计一前40题答案
课程设计一学校的教务数据库设计如下:学生表1 T_STUDENT考试成绩表4 T_SCORET_COURSE1)创建以上几张表,并给表中输入数据。
2)查询T_STUDENT中所有的数据select *from T_Student3)查询T_STUDENT中所有学生的姓名和性别select STUNAME,STUSEXFROM T_Student4)将学号和姓名显示,其中,姓名的格式为:“姓名:xxx”SELECT '姓名:' bb,STUNAME ,stunofrom T_Student5)为了更好地体现各个学生的考试情况,将T_SCORE中的信息显示,分数显示为与60分的差。
select Score-60 AS "分数"FROM T_SCORE6)将学号和姓名显示,其中,列名分别显示为“学生”和姓名。
SELECT STUNAME AS "姓名:",stuno as "学号"from T_Student7)将学号和姓名显示在一个列中,列名显示为:信息。
SELECT STUNO AS "信息"FROM T_STUDENTUNION ALLSELECT StunameFROM T_STUDENT8)查询教师的职称种类SELECT TEATITLEFROM T_Teacher9)查询女生的姓名SELECT STUNAMEFROM T_STUDENTWHERE Stusex='女'10)查询女生的姓名SELECT STUNAMEFROM T_STUDENTWHERE Stusex='女'11)查询课程VB的信息SELECT *FROM T_COURSEWHERE COURSENAME='VB'12)显示所有期中考试及格的记录SELECT *FROM T_SCOREWHERE TYPE='期中'13)为了找出考试尖子,需要显示所有期末考试在90-100的考试记录(使用<,>)SELECT *FROM T_SCORE,T_STUDENTWHERE =AND >9014)学校要举行一帮一活动,让高分学生帮助低分学生。
Visual FoxPro数据库程序设计课后习题参考答案及解析
第一章Visual FoxPro 数据库基础第一节数据库基础知识1、答案:数据描述事物特性的数据内容存储在某一媒体上的数据形式解析:本题考查的知识点是数据的概念及包括的内容。
数据是存储在某一媒体上能够识别的物理符号,其概念包括两个方面:一是描述事物特性的数据内容;二是存储在某一种媒体上的数据形式。
做好该题的关键是熟练掌握数据的概念及包含的两个方面。
2、答案:C解析:本题考查的知识点是数据处理。
数据处理是指将数据转换成信息的过程。
完成这一过程的中心问题是管理好数据。
3、答案:C解析:20世纪50年代中期到20世纪50年代后期是计算机数据管理的人工管理阶段;从20世纪50年代后期到20世纪60年代中后期是计算机数据管理的文件系统阶段;20世纪60年代中后期到20世纪70年代后期是计算机数据管理的数据库系统阶段;20世纪70年代是计算机数据管理的分布式数据库系统阶段;20世纪80年代以后开始将面向对象程序设计引入计算机科学领域之中。
4、答案:描述事物的数据本身相关事物之间的联系解析:本题考查的知识点是数据库的概念及相关的内容。
数据库是存储在计算机存储设备上的结构化的相关数据集合,其概念包括两个方面:一是描述事物的数据本身;二是相关事物之间的联系。
做好该题的关键是熟练掌握数据库的概念及包含的两个方面。
5、答案:D解析:本题考查的知识点是数据库系统的组成。
本题需要记忆。
在Visual FoxPro中,数据库系统由计算机硬件系统、数据库集合、数据库管理系统、相关软件、数据管理员(用户)。
第二节关系数据库1、答案:C解析:数据库管理系统支持的数据模型有3种:层次模型、网状模型和关系模型。
层次模型是指用树形结构表示实体及其之间联系的模型,网状模型是指用网状结构表示实体及其之间联系的模型,关系模型是指用二维表结构表示实体及其之间联系的模型。
2、答案:C解析:本题考查的知识点是数据库管理系统中的关系的基础知识。
在Visual FoxPro中,一个关系就是一个二维表。
数据库课后题答案 第7章 数据库设计
第7章数据库设计1.试述数据库设计过程。
答:这里只概要列出数据库设计过程的六个阶段:( l )需求分析;( 2 )概念结构设计;( 3 )逻辑结构设计;( 4 )数据库物理设计;( 5 )数据库实施;( 6 )数据库运行和维护。
这是一个完整的实际数据库及其应用系统的设计过程。
不仅包括设计数据库本身,还包括数据库的实施、运行和维护。
设计一个完善的数据库应用系统往往是上述六个阶段的不断反复。
2 .试述数据库设计过程各个阶段上的设计描述。
答:各阶段的设计要点如下:( l )需求分析:准确了解与分析用户需求(包括数据与处理)。
( 2 )概念结构设计:通过对用户需求进行综合、归纳与抽象,形成一个独立于具体DBMS 的概念模型。
( 3 )逻辑结构设计:将概念结构转换为某个DBMS 所支持的数据模型,并对其进行优化。
( 4 )数据库物理设计:为逻辑数据模型选取一个最适合应用环境的物理结构(包括存储结构和存取方法)。
( 5 )数据库实施:设计人员运用DBMS 提供的数据语言、工具及宿主语言,根据逻辑设计和物理设计的结果建立数据库,编制与调试应用程序,组织数据入库,并进行试运行。
( 6 )数据库运行和维护:在数据库系统运行过程中对其进行评价、调整与修改。
3 .试述数据库设计过程中结构设计部分形成的数据库模式。
答:数据库结构设计的不同阶段形成数据库的各级模式,即:( l )在概念设计阶段形成独立于机器特点,独立于各个DBMS 产品的概念模式,在本篇中就是E 一R 图;( 2 )在逻辑设计阶段将 E 一R 图转换成具体的数据库产品支持的数据模型,如关系模型,形成数据库逻辑模式,然后在基本表的基础上再建立必要的视图( Vi 娜),形成数据的外模式;( 3 )在物理设计阶段,根据DBMS 特点和处理的需要,进行物理存储安排,建立索引,形成数据库内模式。
4 .试述数据库设计的特点。
答:数据库设计既是一项涉及多学科的综合性技术又是一项庞大的工程项目。
(完整版)数据库课后题参考答案
(完整版)数据库课后题参考答案学校有若干个系,每个系有各自的系号、系名和系主任;每个系有若干名教师和学生,教师有教师号、教师名和职称属性,每个教师可以担任若干门课程,一门课程只能由一位教师讲授,课程有课程号、课程名和学分,并参加多项项目,一个项目有多人合作,且责任轻重有个排名,项目有项目号、名称和负责人;学生有学号、姓名、年龄、性别,每个学生可以同时选修多门课程,选修有分数。
(1)请设计此学校的教学管理的E —R 模型。
(2)将E —R 模型转换为关系模型.2)系 (系号,系名,系主任)教师 (教师号,教师名,职称,系号) 学生(学号,姓名,年龄,性别,系号) 项目(项目号,名称,负责人)课程(课号,课程名,学分,教师号) 选修(课号,学号,分数) 负责(教师号,项目号,排名)3、设有下图所示的医院组织。
试画出其E —R 图及关系模式并用关系代数方法写出下面之查询公式:病房医生 病人图3-1 某医院人员组织关系框图 编号 名称所在位置主任姓名编号姓名患何种病 病房号编号 姓名年龄职称管辖病房号① 找出外科病房所有医生姓名; ② 找出管辖13号病房的主任姓名; ③ 找出管辖病员李维德的医生姓名。
关系模式:病房(编号、名称、所在位置、主任姓名)医生(编号、姓名、年龄、职称、管辖病房号) 病人(病号、姓名、患何种病、病房号)答案:就医病房号医生编号病人编号医生姓名位置负责①、''(外科位置医生姓名=∏σ() ②、'13'(=∏病房号主任姓名σ(病房))③、''(李维德病人姓名医生姓名=∏σ()第三章 习题一、单项选择题1、如果要在Windows 平台上运行DB2应用程序访问运行在UNIX 上的数据库服务器,需要在Windows 上安装那种产品?( )A DB2 企业服务器版B DB2 个人版C DB2 连接器D DB2 运行时客户端 答案:D2、下面那种产品不允许远程的客户端应用程序连接到该服务器?( ) A DB2 快速版 B DB2 个人版C DB2 企业服务器版D DB2 工作组服务器版 答案:B3、一个软件公司要开发一个需要访问DB2 for Linux 和DB2 for z/OS 的应用程序.下面那个产品最能满足这种需求?( )A DB2企业服务器版B DB2工作组服务器版C DB2连接器企业版D DB2通用开发版 答案:D4、下面那种产品不被认为是DB2服务器? ( ) A DB2快速版B DB2工作组服务器版C DB2个人版D DB2企业服务器版 答案:C5、下面那两种工具可以向数据库发出SQL语句进行查询? ()A 命令窗口B 命令中心C 命令行处理器D 命令处理器E 控制中心答案:B、C6、下面那种情况下,健康中心会发出报警:()A 表中的一行被删除B 运行LOAD工具C 当性能指标超过了预先定义的范围D 一条SQL语句由于语法错误而没有执行成功,并报错.答案:C二、填空题:1.DB2工具①可以用来在DB2中调度SQL脚本定期执行。
数据库应用与设计 (清华大学出版社)参考答案
《数据库应用与设计》习题参考答案第1章习题参考答案1、答案:数据库是长期储存在计算机设备上、相互关联的、可以被用户共享的数据集合。
2、答案:数据库中的数据共享带来如下好处:低冗余,保证数据的一致性,易于扩充。
但是数据库中的数据共享可能会引起并发访问的冲突,这就需要采用并发控制来避免。
3、答案:因为概念数据模型可以真实地反映现实世界,被人们所理解。
它是创建数据模型的第一个阶段。
4、答案:5、答案:因为多对多联系是一类比较复杂的联系,一般数据库管理系统也不直接支持多对多联系(需要付出更大的代价),所以多对多联系通常需要转换成一对多联系的。
6、答案:存储数据独立性指当改变存储文件的组织方式或存储结构时,应用程序无需修改。
概念数据独立性指当概念文件的结构发生变化时,应用程序无需修改。
这两种数据独立性是通过三层结构获得的。
在三层结构的方案中,CONCEPTUAL-ROUTINE保证了概念数据的独立性,而STORAGE-ROUTINE则保证了存储数据独立性。
7、答案:数据库模式是用数据描述语言对数据库结构的每一层的框架及结构进行的精确定义。
数据库模式分为存储模式(内模式)、概念模式(模式)、外部模式(子模式)。
存储模式(内模式)定义了存储数据库结构,概念模式(模式)定义了概念数据库结构,外部模式(子模式)定义了外部数据库结构。
8、答案:用户程序通过DBMS修改一条记录时所发生的一系列事件如下:(1)用户程序A向DBMS发出修改一条记录的指令,这时,用户程序要给出外部文件名、记录的关键字值和要修改的信息。
(2)DBCS分析所接到的指令,访问对应的外部模式。
(3)DBCS完成外部模式到概念模式的转换,决定访问哪个(些)概念文件。
(4)由DBSS完成概念模式到存储模式的转换,并决定访问哪个(些)存储文件。
(5)DBSS调用修改方法,通过操作系统修改相应的存储文件。
(6)用户程序从系统缓冲区中获得DBMS返回的状态信息。
数据库 第6章 数据库设计客观题及答案
数据库第6章数据库设计客观题及答案一、选择题1、在数据库设计中,用 ER 图来描述信息结构但不涉及信息在计算机中的表示,它属于数据库设计的()。
A 需求分析阶段B 概念设计阶段C 逻辑设计阶段D 物理设计阶段答案:B解释:概念设计阶段通常使用 ER 图来描述信息结构,主要是对现实世界中的事物及其关系进行抽象和建模,不考虑具体的计算机实现。
2、数据库物理设计完成后,进入数据库实施阶段,下列各项中不属于实施阶段的工作是()。
A 建立库结构B 扩充功能C 加载数据D 系统调试解释:扩充功能一般不属于数据库实施阶段的工作,实施阶段主要是按照物理设计的结果建立数据库的实际结构、加载数据并进行调试。
3、在数据库设计中,将 ER 图转换成关系数据模型的过程属于()。
A 需求分析阶段B 概念设计阶段C 逻辑设计阶段D 物理设计阶段答案:C解释:逻辑设计阶段的主要任务就是将概念模型(如 ER 图)转换为具体的关系数据模型。
4、规范化理论是关系数据库进行逻辑设计的理论依据。
根据这个理论,关系数据库中的关系必须满足:其每一属性都是()。
A 互不相关的B 不可分解的C 长度可变的D 互相关联的解释:规范化理论要求关系数据库中的关系每一属性都是不可分解的,以避免数据冗余和操作异常。
5、从 ER 模型关系向关系模型转换时,一个 M:N 联系转换为关系模式时,该关系模式的关键字是()。
A M 端实体的关键字B N 端实体的关键字C M 端实体关键字与 N 端实体关键字组合D 重新选取其他属性答案:C解释:在 M:N 的联系中,转换后的关系模式关键字应为两端实体关键字的组合,这样才能唯一标识一个联系。
6、设有关系模式 R(A,B,C,D),其函数依赖集 F ={A→B,B→C,C→D,D→A},则 R 的候选关键字为()。
A ABB BCC CDD 不存在答案:D解释:由于该函数依赖集中存在循环依赖,所以不存在候选关键字。
7、关系数据库规范化是为解决关系数据库中()问题而引入的。
数据库课程设计+详解+答案
1.需求分析系统需求分析:随着互联网的发展,计算机的软硬件不断的更新迭代,这时计算机已经可以管理超大规模的数据,文件系统远远不能满足各种应用的需求,数据库使得数据实现了结构化存储,数据更容易被共享。
数据库管理系统既便于数据的集中管理,控制冗余,提高数据的利用率和一致性,又利于应用程序的开发和维护。
随着高校学生人数越来越多,课程越来越丰富,学生多老师少,迫切需要一个数据库管理系统来管理、存取大量的信息,则建立一个学生毕业设计选题系统具有非常大的实际应用意义。
我们知道计算机具有运算速度快,处理能力强等特点。
因此,为了保证学校信息的流畅,工作高效,学生毕业设计选题系统应运而生。
这不但能使教务人员从复杂的管理中解脱出来,而且对于推动教学的发展也起到非常重要的作用。
系统功能需求分析:教师和学生进行双向选择,即学生可选择相应的毕业设计题目,教师也可选择学生。
1)教师:1.1 教师可以增加毕业设计题目,人数,及要求。
1.2 教师可录取报名的学生,查看学生的详细信息如学生的基本信息等内容。
1.3针对不同的用户,可进行相关的统计、查询可查看报自己的学生人数,基本信息等。
2)学生:2.1 可浏览教师的毕业设计题目及教师的简介等内容。
2.2 可查看自己的个人信息(基本信息)。
2.3 可以报毕业设计题目,每人限报两个,第一选题志愿和第二选题志愿。
3)管理员3.1 可对每个教师、学生进行统计分析与维护。
2.概念设计(E-R图)根据需求分析结果,学生、教师、管理员、题目、班级、专业、学院等可建模为基本实体集。
各基本实体集的属性定义如下:1.学生(Student)实体集。
其属性有:学号(studentNo)、(studentName)、性别(sex)、出生日期(birthday)、籍贯(native)、民族(nation)等。
2.教师(Teacher)实体集。
其属性有:教师编号(teacherNo)、(teacherName)、性别(sex)、学位(degree)等。
2020秋季XXX数据库课程设计答案
2020秋季XXX数据库课程设计答案随着企业的发展,客户管理变得越来越重要。
手工管理已经不能满足企业的需求,因此需要一个完整准确的客户管理系统。
该系统可以提高工作效率、减少人工操作的繁琐,并且方便、快捷、准确,得到了很多人的青睐。
因此,本课程设计旨在建立一个客户信息收集、管理、分析和利用的信息系统,以客户数据的管理为核心,记录企业在市场营销和销售过程中和客户发生的各种交互行为,以及各类有关活动的状态,提供各类数据模型,为后期的分析和决策提供支持。
2.2系统设计需求客户管理数据库系统需要考虑实体完整性约束、参照完整性约束、及尽量减少数据的冗余。
通过对系统用户设置、客户信息管理、商品信息管理、订单管理几个部分设计,该系统能完成添加系统用户、删除系统用户、添加客户信息、删除客户信息,添加商品信息,删除商品信息等进行相关的管理操作。
这样可以方便员工及管理人员管理客户。
2.3应用范围本系统可用于销售公司,特别是互联网销售,可以把客户姓名、电话、地址、购物情况等统一录入系统,方便二次跟进销售。
在实际应用中,该系统可以提高销售公司的工作效率,减少客户流失和订单减少的情况发生。
3系统实现在实现客户管理数据库系统时,需要考虑以下几个方面:系统用户设置、客户信息管理、商品信息管理、订单管理等。
在系统用户设置中,需要考虑用户的权限、角色等;在客户信息管理中,需要考虑客户的基本信息、交互行为、活动状态等;在商品信息管理中,需要考虑商品的基本信息、价格、库存等;在订单管理中,需要考虑订单的状态、支付情况、发货情况等。
通过对这些方面的设计和实现,可以使客户管理数据库系统更加完善、便捷、高效。
4总结客户管理数据库系统是一个非常重要的信息系统,可以提高销售公司的工作效率、减少客户流失和订单减少的情况发生。
在实现系统时,需要考虑系统用户设置、客户信息管理、商品信息管理、订单管理等方面。
通过对这些方面的设计和实现,可以使客户管理数据库系统更加完善、便捷、高效。
大工秋《sql数据库课程设计》答案
网络教育学院《SQL数据库课程设计》题目:学生信息管理系统的设计与实现学习中心:奥鹏学习中心专业:年级:年 /秋季学号:学生:指导教师:**1 项目概况1.1 SQL 数据库简介Microsoft SQL Server 2000 是Microsoft 公司继SQL Server 6.5和SQL Server 7.0以后,在新千年推出的又一改进的新版关系型数据管理系统。
它能使用户快捷地管理数据库和开发应用程序。
SQL Server 2000 使用了了先进的数据库结构,与Windows DNA紧密集成,具有强大的Web 功能,它可以利用高端硬件平台以及最新网络和存储技术,可以为最大的Web站点和企业应用提供优良的扩展性和可靠性,使用户能够在Internet 领域快速建立服务系统,为占领市场赢得宝贵的时间。
同时,SQL Server 2000 还为用户提供了重要的安全性功能的增强,为用户的数据安全提供了可靠的保证。
另外,SQL Server 2000还为用户提供了重要的安全性功能的增强,为用户的数据安全提供了可靠的保证。
另外,SQL Server 2000 在数据库服务器自动管理技术方面处于数据库领域的领先地位,它可以使用户免去繁琐复杂的工作量,从而有精力处理更重要的问题,使用系统在商业战略上占得先机。
SQL Server 2000 的特性Microsoft® SQL Server™ 2000 的特性包括:1、Internet 集成。
SQL Server 2000 数据库引擎提供完整的XML 支持。
它还具有构成最大的Web 站点的数据存储组件所需的可用性、可伸缩性和安全功能。
2、可伸缩性和可用性。
同一个数据库引擎可以在不同的平台上使用,从运行Microsoft Windows® 98 的便携式电脑到运行 Microsoft Windows 2000 数据中心版的大型多处理器服务器。
数据库课后答案(简约版)
数据库课后答案(简约版)1.什么是数据,数据库,数据库管理系统,数据库系统?数据:是数据库中存储的基本对象;是描述事物的符号纪录;与语义不可分割.数据库:是长期存储在计算机内,有组织的,可共享的大量数据的集合.数据库管理系统:位于用户和操作系统之间的一层数据管理软件;是计算机的基础软件,也是一个大型复杂的软件系统.数据库系统:是指在计算机系统中引入数据库后的系统,一般由数据库,DBMS,应用系统,DBA 构成.数据库技术经历阶段: 人工管理----文件系统----数据库系统数据库系统的特点: 1.数据结构化2.数据的共享性高,冗余度低,易扩充3.数据独立性高4.数据由DBMS统一管理和控制从数据库最终用户角度看,数据库系统的结构分为:单用户结构, 主从式结构, 分布式结构, 客户/服务器, 浏览器/服务器.2.试述数据系统的三级模式结构,这种结构的优点是什么?数据库的三级模式: 外模式,模式,内模式.{ 外模式: 也称子模式或用户模式,是数据库用户能够看见和使用的局部数据的逻辑结构和特征的描述. 模式: 也称逻辑模式,是数据库中全体数据的逻辑结构和特征的描述. 内模式: 也称存储模式,是数据物理结构和存储方式的描述,是数据在数据库内部的表示方式. } 这种结构的优点: 数据库的三级模式是对数据的三个抽象级别,它对数据的具体组织留给DBMS管理,使用户能逻辑地抽象地处理数据,而不必关心数据在计算机中的具体表示方式与存储方式.为了能够在内部实现这三个抽象层次的联系和转换,数据库管理系统在这三级模式之间提供了两层映像:外模式/模式映像,模式/内模式映像.这是这两层映像保证了数据库中的数据能够具有较高的逻辑独立性和物理独立性.3.什么是物理独立性?什么是逻辑独立性?为什么数据库系统具有数据与程序的独立性?数据与程序的物理独立性: 当数据库的存储结构发生改变,由数据库管理员对模式/内模式映像作相应改变,可以使模式保持不变,从而应用程序也不必改变. 数据与程序的逻辑独立性: 应用程序是依据数据的外模式编写的,从而应用程序不必修改,保证了数据与程序的逻辑独立性.数据库系统具有数据和程序的独立性的原因: 数据与程序之间的独立性,使得数据的定义和描述可以从应用程序中分离出去.另外,由于数据的存取由DBMS管理,用户不必考虑存取路径等细节,从而简化了应用程序的编制,大大减少了应用程序的维护和修改.4.什么是候选码,主码,外部码?候选码: 若关系中的某个属性组的值能够唯一地标识一个元组,则称该属性组为候选码.主码: 若一个关系有许多候选码,则选定其中一个为主码.外部码: 设F是基本关系R的一个或一组属性,但不是关系R的码.K 是基本关系S的主码.如果F与K相对应,则称F是R的外码.5.等值连接和自然连接的区别和联系是什么?的连接运算称为等值连接.它是从关系R与S的广义笛卡尔积中选取A、B属性值相等的那些元组,即等值连接为:自然连接是一种特殊的等值连接.它要求两个关系中进行比较的分量必须是相同的属性组,并且在结果中把重复的属性列去掉.即若R和S 具有相同的属性组B,则自然连接可记作:6.什么是基本表?什么是视图?两者的区别和联系是什么?基本表是本身独立存在的表.一个关系就对应一个基本表,一个(或多个)基本表对应一个存储文件. 视图是从一个或几个基本表导出的表,视图是一个虚表.两者区别: 即基本表是实表,数据库可存放其定义及其对应数据;视图是虚表,是由基本表导出的表,数据库只存放其定义而不存放其对应数据.两者联系:视图在概念上与基本表相同,用户可以如同基本表那样使用视图,另外可以在视图上再定义视图.7.所有的视图是否都可以更新?为什么?不是的,因为视图时不实际存储数据的虚表,因此对视图的更新,最终要转为对基本表的更新.而有些视图的更新不能唯一有意义地转换成相对应基本表的更新,所以不是所有的视图都是可更新的.8.什么是数据库的安全性?什么是计算机系统安全性?数据库的安全性: 是指保护数据库以防止不合法的使用造成的数据泄露,更改或破坏.计算机系统安全性: 是指为计算机系统建立和采取的各种安全保护措施,以保护计算机系统中的硬件,软件及数据,防止其因偶然或恶意的原因使系统遭到破坏,数据遭到修改或泄露等.三类安全性问题: 技术安全类, 管理安全类, 政策法律类9.什么是数据库中自主存取控制方法和强制存取控制方法?自主存取控制方法(DAC): 在此方法中,用户对于不同的数据库对象有不同的存取权限,不同的用户对同一对象也有不同的权限,而且用户还可将拥有的存取权限转授给其它用户. 强制存取控制方法(MAC): 在此方法中,每一个数据库对象被标以一定的密级,每一个用户也被授予某一个级别的许可证.对于任意一个对象,只有具有合法许可证的用户才可以存取.10.什么是数据完整性?什么是完整性约束条件?数据的完整性是为了防止数据库中存在不符合语义的数据,也就是防止数据库中存在不正确的数据. 数据的安全性是保护数据库防止恶意的破坏和非法的存取.完整性约束条件也称为完整性规则,是数据库中的数据必须满足的语义约束条件.SQL标准使用了一系列概念来描述完整性,包括关系模型的实体完整性,参照完整性和用户定义完整性.11.数据库设计分为哪几个阶段?每个阶段做哪些工作?1.需求分析阶段即进行数据库设计之前需准确了解与分析用户需求.2.概念结构设计阶段即通过对用户需求进行集合、归纳与抽象,形成一个独立于具体DBMS的概念模型.3.逻辑结构设计阶段即将概念结构转换为某个DBMS所支持的数据模型,并对其进行优化.4.物理设计阶段即为逻辑数据模型选取一个最适合应用环境的物理结构.5.数据库实施阶段即根据逻辑设计和物理设计的结构建立数据库,编制与调试应用程序,组织数据入库,并进行试运行.6.数据库运行和维护阶段即在数据库系统运行过程中必须不断地对其进行评价、调整和修改.12.设计概念结构时如何区分实体和属性?实体与属性之间并没有形式上可以截然划分的界限,但可以给出两条准则:1.作为”属性”,不能再具有需要描述的性质.”属性”必须是不可分的数据项,不能包含其它属性.2.”属性”不能与其它实体具有联系,即E-R图中所表示的联系是实体之间的联系.凡满足上述两条准则的事物,一般均可以作为属性对待.13.各个分视图在集成时可能会产生哪些冲突?冲突主要有三类: 属性冲突, 命名冲突, 结构冲突.14.E-R图在转换成关系模型时,遵循哪些原则?一个实体型转换为一个关系模式.实体的属性就是关系的属性,实体的码就是关系的码.对于实体型之间的联系则有以下不同的情况:1.一个1:1联系可以转换为一个独立的关系模式,也可以与任意一段对应的关系模式合并.2.一个1:n联系可以转换为一个独立的关系模式,也可以与n端对应的关系模式合并.3.一个m:n联系转换为一个关系模式.4.3个或3个以上实体间的一个多元联系可以转换为一个关系模式.5.具有相同码的关系模式可合并.15.数据物理设计的内容和方法是什么?内容:1.为关系模式选择存取方法;2.设计关系、索引等数据库文件的物理存储结构.方法:1.索引方法 2.聚簇方法 3.HASH方法16.数据库实施阶段和运行阶段分别有哪些需要做的工作?实施阶段:1.数据的载入 2.应用程序的编码和调试运行阶段:1.数据的转储和恢复 2.数据的安全性和完整性控制3.数据库性能的监督、分析和改造4.数据库的重组织和重构造17.什么是事务?四个特性是什么?恢复技术能保证事务的哪些特性?事务是: 一个数据库操作序列;一个不可分割的工作单位;恢复和并发控制的基本单位.四个特性:原子性、一致性、隔离性、持续性(ACID)恢复技术保证:原子、一致、持续性.18.数据库运行中可能产生的故障有哪几类?故障大致可分为:1.事务内部的故障 2.系统故障 3.介质故障 4.计算机病毒其中123影响事务的正常执行, 34破坏数据库数据.19.数据库恢复的基本技术有哪些?1.数据转储2.登记日志文件20.数据库转储的意义是什么?试比较各种数据转储方法.数据转储是数据库恢复中采用的基本技术.所谓转储即DBA定期地将整个数据库复制到磁带或另一个磁盘上保存起来的过程.静态转储实现简单,但会降低数据库的可用性.动态转储不用等待正在运行的用户事务结束,也不会影响新事务的运行,但不能保证正确有效.海量转储从恢复的角度看,使用它得到的后台副本进行恢复一般说来会更方便些.但如果数据库很大,事务处理又十分频繁,则增量转储方式更实用更有效.21.什么是日志文件?为什么要设立日志文件?日志文件是用来记录事务对数据库的更新操作的文件,主要有两种格式:以记录为单位的日志文件和以数据块为单位的日志文件.日志文件在数据库恢复中起着非常重要的作用,具体是:1.事务故障恢复和系统故障恢复必须用日志文件.2.在动态转储方式中必须建立日志文件,后备副本和日志文件结合起来才能有效地恢复数据库.3.在静态转储方式中,也可以建立日志文件.所以,有必要建立日志文件.22.登陆日志文件时为什么必须先写日志文件,后写数据库?把对数据的修改写到数据库中和把表示这个修改的日志记录写到日志文件中是两个不同的操作.有可能在这两个操作之间发生故障,即这两个写操作只完成了一个.如果先写了数据库修改,而在运行记录中没有登记这个修改,则以后就无法恢复这个修改了.如果先写日志,但没有修改数据库,按日志文件恢复时只不过是多执行一次不必要的UNDO操作,并不会影响数据库的正确性.所以为了安全,一定要先写日志文件,后写数据库.23.数据库为什么要并发控制?数据库的重要特征是它能为多个用户提供数据共享.当多个用户并发地存取数据库时就会产生多个事务同时存取同一数据的情况.若对并发控制不加控制,就可能会存取和存储不正确的数据,破坏事务的一致性和数据库的一致性.所以数据库管理系统必须提供并发控制机制.并发控制技术能保证事务的:隔离性、一致性.24.并发控制可能会产生哪几类数据不一致?用什么方法能避免各种不一致的情况?并发操作带来的数据不一致包括三类:1.丢失修改2.不可重复读3.读”脏”数据避免不一致性的方法和技术是并发控制.而并发控制的主要技术是封锁、时间戳和乐观控制法.其中,最常用的技术是封锁技术.25.解释封锁、活锁、死锁、排它锁、共享锁、并发事务调度、可串行化调度、两段锁协议? 封锁: 事务T在对某个数据对象例如表、记录等操作之前,先向系统发出请求,对其加锁.加锁后事务T就对该数据对象有了一定的控制,在事务T释放它的锁之前,其他的事务不能更新此数据对象.活锁: 如果事务T1封锁了数据R,事务T2又请求封锁R,于是T2等待.T3也请求封锁R,当T1释放了R上的封锁之后系统首先批准了T3的请求,T2仍等待.然后T4又请求封锁R,当T3释放了R上的封锁之后系统又批准了T4的请求……T2有可能永远等待,这就是活锁的情形.死锁: 如果事务T1封锁了输入R2,然后T1又请求封锁R2,因T2已经锁了R2,于是T1等待T2释放R2上的锁.接着T2又申请封锁R1,因T1已经封锁了R1,T2也只能等待T1释放R1上的锁.这样就出现了T1在等待T2,而T2又在等待T1的局面,T1和T2两个事务永远不能结束,形成死锁.排它锁: 又称为写锁,X锁.若事务T对数据对象A加上X锁,则只允许T读取和修改A,其它任何事务都不能再对A加任何类型的锁,直到T 释放A上的锁.共享锁: 又称为读锁,S锁.若事务T对数据对象A加上S锁,则事务T可以读A但不能修改A,其它事务只能再对A加S锁,而不能加X锁,直到T释放A上的S锁.并发事务调度: 事务的执行次序称为”调度”.如果利用分时的方法,同时处理多个事务,则称为事务的并发调度.可串行化调度: 多个事务的并发执行是正确的,当且仅当其结果与按某一次序串行地执行这些事务时的结果相同,称这种角度策略为可串行化的调度.两段锁协议: 所谓的”两段”锁的含义是:1.扩展阶段----可以申请封锁,但是不能解除任何已取得的封锁.2.收缩阶段----可以释放封锁,但不能申请新的封锁.两段锁协议规定所有事务都要遵循下列规则:1.在对任何数据进行读写操作之前,事务首先要获得对该数据的封锁.2.在释放一个封锁之后,事务不再获得任何其它封锁.关系数据模型: 数据结构+ 数据操作+ 完整性约束.。
数据库课后习题完整答案
习题参考答案第1章习题参考答案一、选择题1. C2. B3. D4. C5. D6. A7. A8. B9. D、10. B 11. C 12. D 13. A 14. D 15. B二、填空题1. 数据库系统2. 关系3. 物理独立性4. 操作系统5. 数据库管理系统(DBMS)6. 多对多7. 独立性8. 完整性控制9. 逻辑独立性10. 关系模型11. 概念结构(逻辑)12. 树有向图二维表嵌套和递归13. 宿主语言(或主语言)14. 数据字典15. 单用户结构主从式结构分布式结构客户/服务器结构浏览器/服务器结构第2章习题参考答案一、选择题1. A2. C3. C4. B5. B6. C7. B8. D9. C 10. A 11. B 12. A 13. A 14. D 15. D二、填空题1. 选择(选取)2. 交3. 相容(或是同类关系)4. 并差笛卡尔积选择投影5. 并差交笛卡尔积6. 选择投影连接7. σf(R)8. 关系代数关系演算9. 属性10. 同质11. 参照完整性12. 系编号系名称,电话,办公地点13. 元组关系域关系14. 主键外部关系键15. R和S没有公共的属性三、简答7.σtno=’T1’(T)*TC*C)(1)∏cno,cn(σage>18∧Sex=’男’ (S))(2)∏sno,sn,dept(σtn=’李力’(T)*TC*C)(3)∏cno,cn,ct(σsno=’s1’(S)*SC*C)(4)∏cno,cn,score(σsn=’钱尔’(S)*SC*∏cno,cn(C)) (5)∏cno,cn,score(σtn=’刘伟’(T)*TC)(6)∏sn,cno(S*SC)÷∏cno(σsn=’李思’(S))*C)(7)∏cno,cn(C)-∏cno,cn(SC*((8)∏cno,cn,sno(C*SC)÷∏sno(S)σcno=’c1’∨cno=’c2’ (SC)) (9)∏sno,sn,cno(S*SC)*∏cno((10)∏sno,sn,cno(S*SC)÷∏cno(C)第3章习题参考答案一、填空题1.结构化查询语言(Structured Query Language)2.数据查询、数据定义、数据操纵、数据控制3.外模式、模式、内模式4.数据库、事务日志5.NULL/NOT NULL、UNIQUE约束、PRIMARY KEY约束、FOREIGNKEY约束、CHECK约束6.聚集索引、非聚集索引7.连接字段8.行数9.定义10.系统权限、对象权限11.基本表、视图12.(1)INSERT INTO S VALUES('990010','李国栋','男',19)(2)INSERT INTO S(No,Name) VALUES('990009', '陈平')(3)UPDATE S SET Name='陈平' WHERE No='990009'(4)DELETE FROM S WHERE No='990008'(5)DELETE FROM S WHERE Name LIKE '陈%'13.CHAR(8) NOT NULL14.o=o15.ALTER TABLE StudentADDSGrade CHAR(10)二、选择题1. B2. A3. C4. B5. C6. C7. B8. D9. A 10. D第4章习题参考答案一、选择题1. B2. B3. D4. B5. C6. D7. B8. D9. C 10. A二、填空题1. 超键(或超码)2. 正确完备3. 属性集X的闭包X +函数依赖集F的闭包F +4. 平凡的函数依赖自反性5. {AD→C} φ6. 2NF 3NF BCNF7. 无损连接保持函数依赖8. AB BC BD9. B→φB→B B→C B→BC10. B→C A→D D→C11. AB1NF12. AD3NF三、简答题1、2、3、4、5、解(1)根据F对属性分类:L类属性:BD。
数据库实用教程课后习题参考答案(1-4章)
数据库实用教程课后习题参考答案(1-4章)第1、2章1.1 名词解释:◆ DB:数据库(Database),DB是统一管理的相关数据的集合。
DB能为各种用户共享,具有最小冗余度,数据间联系密切,而又有较高的数据独立性。
◆ DBMS:数据库管理系统(Database Management System),DBMS是位于用户与操作系统之间的一层数据管理软件,为用户或应用程序提供访问DB的方法,包括DB的建立、查询、更新及各种数据控制。
DBMS总是基于某种数据模型,可以分为层次型、网状型、关系型、面向对象型DBMS。
◆ DBS:数据库系统(Database System),DBS是实现有组织地、动态地存储大量关联数据,方便多用户访问的计算机软件、硬件和数据资源组成的系统,即采用了数据库技术的计算机系统。
◆ 1:1联系:如果实体集E1中的每个实体最多只能和实体集E2中的一个实体有联系,反之亦然,好么实体集E1对E2的联系称为“一对一联系”,记为“1:1”。
◆ 1:N联系:如果实体集E1中每个实体与实体集E2中任意个(零个或多个)实体有联系,而E2中每个实体至多和E1中的一个实体有联系,那么E1对E2的联系是“一对多联系”,记为“1:N”。
◆ M:N联系:如果实体集E1中每个实体与实体集E2中任意个(零个或多个)实体有联系,反之亦然,那么E1对E2的联系是“多对多联系”,记为“M:N”。
◆ 数据模型:表示实体类型及实体类型间联系的模型称为“数据模型”。
它可分为两种类型:概念数据模型和结构数据模型。
◆ 概念数据模型:它是独门于计算机系统的模型,完全不涉及信息在系统中的表示,只是用来描述某个特定组织所关心的信息结构。
◆ 结构数据模型:它是直接面向数据库的逻辑结构,是现实世界的第二层抽象。
这类模型涉及到计算机系统和数据库管理系统,所以称为“结构数据模型”。
结构数据模型应包含:数据结构、数据操作、数据完整性约束三部分。
数据库应用课程设计答案
数据库应用课程设计答案一、教学目标本课程旨在让学生掌握数据库应用的基本概念、原理和方法,培养学生运用数据库技术解决实际问题的能力。
具体目标如下:1.知识目标:(1)了解数据库的基本概念、发展历程和分类;(2)掌握关系数据库的基本原理,包括数据模型、关系操作语言等;(3)熟悉数据库设计和规范化理论;(4)了解数据库安全性和完整性。
2.技能目标:(1)能使用数据库管理系统进行基本的数据操作;(2)能运用SQL语言进行数据库查询和 manipulation;(3)具备简单的数据库设计和优化能力;(4)了解数据库的备份和恢复方法。
3.情感态度价值观目标:(1)培养学生对数据库技术的兴趣和好奇心;(2)培养学生团队合作精神和自主学习能力;(3)使学生认识到数据库技术在现实生活中的重要性和应用价值。
二、教学内容本课程的教学内容主要包括以下几个部分:1.数据库基本概念:数据库、数据库管理系统、数据模型等;2.关系数据库:关系模型、关系操作语言、关系数据库设计等;3.数据库设计:需求分析、概念设计、逻辑设计、物理设计等;4.数据库安全与完整性:安全性、完整性约束、访问控制等;5.数据库应用开发:数据库编程、存储过程、触发器等;6.数据库性能优化:查询优化、索引、分区等。
三、教学方法为了提高教学效果,我们将采用以下教学方法:1.讲授法:用于讲解基本概念、原理和方法;2.案例分析法:通过实际案例使学生更好地理解数据库的应用;3.实验法:让学生动手实践,加深对数据库操作和设计的理解;4.小组讨论法:培养学生的团队合作精神和沟通能力。
四、教学资源为了支持教学,我们将准备以下教学资源:1.教材:选用权威、实用的数据库教材;2.参考书:提供相关的数据库技术书籍,供学生自主学习;3.多媒体资料:制作课件、演示文稿等,辅助教学;4.实验设备:提供充足的数据库服务器和客户端软件,确保学生实验需求。
五、教学评估本课程的教学评估将采用多元化、全过程的方式进行,以全面、客观地评价学生的学习成果。
数据库原理教程习题答案解析(全)
0000000000第1章数据库系统概述习题参考答案税务局使用数据库存储纳税人(个人或公司)信息、纳税人缴纳税款信息等。
典型的数据处理包括纳税、退税处理、统计各类纳税人纳税情况等。
银行使用数据库存储客户基本信息、客户存贷款信息等。
典型的数据处理包括处理客户存取款等。
超市使用数据库存储商品的基本信息、会员客户基本信息、客户每次购物的详细清单。
典型的数据处理包括收银台记录客户每次购物的清单并计算应交货款。
1.2 DBMS是数据库管理系统的简称,是一种重要的程序设计系统。
它由一个相互关联的数据集合和一组访问这些数据的程序组成。
数据库是持久储存在计算机中、有组织的、可共享的大量数据的集合。
数据库中的数据按一定的数据模型组织、描述和存储,可以被各种用户共享,具有较小的冗余度、较高的数据独立性,并且易于扩展。
数据库系统由数据库、DBMS(及其开发工具)、应用系统和数据库管理员组成。
数据模型是一种形式机制,用于数据建模,描述数据、数据之间的联系、数据的语义、数据上的操作和数据的完整性约束条件。
数据库模式是数据库中使用数据模型对数据建模所产生设计结果。
对于关系数据库而言,数据库模式由一组关系模式构成。
数据字典是DBMS维护的一系列内部表,用来存放元数据。
所谓元数据是关于数据的数据。
1.3 DBMS提供如下功能:(1)数据定义:提供数据定义语言DDL,用于定义数据库中的数据对象和它们的结构。
(2)数据操纵:提供数据操纵语言DML,用于操纵数据,实现对数据库的基本操作(查询、插入、删除和修改)。
(3)事务管理和运行管理:统一管理数据、控制对数据的并发访问,保证数据的安全性、完整性,确保故障时数据库中数据不被破坏,并且能够恢复到一致状态。
(4)数据存储和查询处理:确定数据的物理组织和存取方式,提供数据的持久存储和有效访问;确定查询处理方法,优化查询处理过程。
(5)数据库的建立和维护:提供实用程序,完成数据库数据批量装载、数据库转储、介质故障恢复、数据库的重组和性能监测等。
数据库系统原理与设计课后习题详细答案
数据库系统原理与设计习题集第一章绪论一、选择题1. DBS是采用了数据库技术的计算机系统,DBS是一个集合体,包含数据库、计算机硬件、软件和()。
A. 系统分析员B. 程序员C. 数据库管理员D. 操作员2. 数据库(DB),数据库系统(DBS)和数据库管理系统(DBMS)之间的关系是()。
A. DBS包括DB和DBMSB. DBMS包括DB和DBSC. DB包括DBS和DBMSD. DBS就是DB,也就是DBMS3. 下面列出的数据库管理技术发展的三个阶段中,没有专门的软件对数据进行管理的是()。
I.人工管理阶段II.文件系统阶段III.数据库阶段A. I 和 IIB. 只有 IIC. II 和 IIID. 只有 I4. 下列四项中,不属于数据库系统特点的是()。
A. 数据共享B. 数据完整性C. 数据冗余度高D. 数据独立性高5. 数据库系统的数据独立性体现在()。
A.不会因为数据的变化而影响到应用程序B.不会因为系统数据存储结构与数据逻辑结构的变化而影响应用程序C.不会因为存储策略的变化而影响存储结构D.不会因为某些存储结构的变化而影响其他的存储结构6. 描述数据库全体数据的全局逻辑结构和特性的是()。
A. 模式B. 内模式C. 外模式D. 用户模式7. 要保证数据库的数据独立性,需要修改的是()。
A. 模式与外模式B. 模式与内模式C. 三层之间的两种映射D. 三层模式8. 要保证数据库的逻辑数据独立性,需要修改的是()。
A. 模式与外模式的映射B. 模式与内模式之间的映射C. 模式D. 三层模式9. 用户或应用程序看到的那部分局部逻辑结构和特征的描述是(),它是模式的逻辑子集。
A.模式B. 物理模式C. 子模式D. 内模式10.下述()不是DBA数据库管理员的职责。
A.完整性约束说明B. 定义数据库模式C.数据库安全D. 数据库管理系统设计选择题答案:(1) C (2) A (3) D (4) C (5) B(6) A (7) C (8) A (9) C (10) D二、简答题1.试述数据、数据库、数据库系统、数据库管理系统的概念。
数据库课后习题答案(全)
第1章数据库系统概述习题参考答案1.1 数据处理和数据库应用的例子:电话公司使用数据库存储客户基本信息、客户的每次通话信息以及雇员基本信息、雇员业绩信息等。
典型的数据处理包括电话收费、生成客户长途电话话单、计算雇员工资等图书馆使用数据库存储图书资料信息、读者基本信息、图书借阅信息等。
典型的数据处理包括新书登记、处理读者借还图书等税务局使用数据库存储纳税人(个人或公司)信息、纳税人缴纳税款信息等。
典型的数据处理包括纳税、退税处理、统计各类纳税人纳税情况等。
银行使用数据库存储客户基本信息、客户存贷款信息等。
典型的数据处理包括处理客户存取款等。
超市使用数据库存储商品的基本信息、会员客户基本信息、客户每次购物的详细清单。
典型的数据处理包括收银台记录客户每次购物的清单并计算应交货款。
1.2 DBMS是数据库管理系统的简称,是一种重要的程序设计系统。
它由一个相互关联的数据集合和一组访问这些数据的程序组成。
数据库是持久储存在计算机中、有组织的、可共享的大量数据的集合。
数据库中的数据按一定的数据模型组织、描述和存储,可以被各种用户共享,具有较小的冗余度、较高的数据独立性,并且易于扩展。
数据库系统由数据库、DBMS(及其开发工具)、应用系统和数据库管理员组成。
数据模型是一种形式机制,用于数据建模,描述数据、数据之间的联系、数据的语义、数据上的操作和数据的完整性约束条件。
数据库模式是数据库中使用数据模型对数据建模所产生设计结果。
对于关系数据库而言,数据库模式由一组关系模式构成。
数据字典是DBMS维护的一系列内部表,用来存放元数据。
所谓元数据是关于数据的数据。
1.3 DBMS提供如下功能:(1)数据定义:提供数据定义语言DDL,用于定义数据库中的数据对象和它们的结构。
(2)数据操纵:提供数据操纵语言DML,用于操纵数据,实现对数据库的基本操作(查询、插入、删除和修改)。
(3)事务管理和运行管理:统一管理数据、控制对数据的并发访问,保证数据的安全性、完整性,确保故障时数据库中数据不被破坏,并且能够恢复到一致状态。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
1.需求分析系统需求分析:随着互联网的发展,计算机的软硬件不断的更新迭代,这时计算机已经可以管理超大规模的数据,文件系统远远不能满足各种应用的需求,数据库使得数据实现了结构化存储,数据更容易被共享。
数据库管理系统既便于数据的集中管理,控制冗余,提高数据的利用率和一致性,又利于应用程序的开发和维护。
随着高校学生人数越来越多,课程越来越丰富,学生多老师少,迫切需要一个数据库管理系统来管理、存取大量的信息,则建立一个学生毕业设计选题系统具有非常大的实际应用意义。
我们知道计算机具有运算速度快,处理能力强等特点。
因此,为了保证学校信息的流畅,工作高效,学生毕业设计选题系统应运而生。
这不但能使教务人员从复杂的管理中解脱出来,而且对于推动教学的发展也起到非常重要的作用。
系统功能需求分析:教师和学生进行双向选择,即学生可选择相应的毕业设计题目,教师也可选择学生。
1)教师:1.1 教师可以增加毕业设计题目,人数,及要求。
1.2 教师可录取报名的学生,查看学生的详细信息如学生的基本信息等内容。
1.3针对不同的用户,可进行相关的统计、查询可查看报自己的学生人数,基本信息等。
2)学生:2.1 可浏览教师的毕业设计题目及教师的简介等内容。
2.2 可查看自己的个人信息(基本信息)。
2.3 可以报毕业设计题目,每人限报两个,第一选题志愿和第二选题志愿。
3)管理员3.1 可对每个教师、学生进行统计分析与维护。
2.概念设计(E-R图)根据需求分析结果,学生、教师、管理员、题目、班级、专业、学院等可建模为基本实体集。
各基本实体集的属性定义如下:1.学生(Student)实体集。
其属性有:学号(studentNo)、(studentName)、性别(sex)、出生日期(birthday)、籍贯(native)、民族(nation)等。
2.教师(Teacher)实体集。
其属性有:教师编号(teacherNo)、(teacherName)、性别(sex)、学位(degree)等。
3.班级(Class)实体集。
其属性有:班级编号(classNo)、班级名称(className)等。
4.专业(Speciality)实体集。
其属性有:专业编号(specialityNo)、专业名称(specialityName)等。
5.学院(Institute)实体集。
其属性有:学院编号(instituteNo)、学院名称(instituteName)等。
6.题目(Title)实体集。
其属性有:题目编号(titleNo)、题目名称(titleName)、要求(requirement)、人数(population)等。
7.管理员(Manager)实体集。
其属性有:工号(managerNo)、(managerName)、性别(sex)、联系方式(phoneNum)。
定义联系集及属性:1.选题(SelectTitle)联系集:它是题目实体集与学生实体集的一对多联系集,其描述属性有:题目编号(titleNo)、学号(studentNo)、教师编号(teacherNo)、志愿(wish)、录取情况(admission)等。
2.出题(SetTitle)联系集:它是教师实体集与题目实体集的一对多联系集,没有联系属性。
3.指导(Guidance)联系集:它是教师实体集与学生实体集的一对多联系集,没有联系属性。
4.包含(Include)联系集:它是班级实体集与学生实体集的一对多联系集,没有联系属性。
5.拥有(Hold)联系集:它是专业实体集和班级实体集的一对多联系集,没有联系属性。
6.属于(Belong)联系集:它是学院实体集与教师实体集的一对多联系集,没有联系属性。
7.设置(Establish)联系集:它是学院实体集与专业实体集的一对多联系集,没有联系属性。
权限设置:(1)用户(User):账号(userNo)、登录密码(password)、(userName)、身份(identity)等。
3.逻辑设计(下划线加粗代表主码,斜体加粗代表外码)(1)学生Student表:由学生关系实体集转化而来。
学生Student(studentNo,studentName,sex,birthday,native,nation,classNo);(2)教师Teacher表:由教师实体集转化而来。
教师Teacher(teacherNo,teacherName,sex,degree,instituteNo);(3)班级Class表:由班级实体集转化而来。
班级Class(classNo,className,specialityNo);(4)专业Speciality表:由专业实体集转化而来。
专业Speciality(specialityNo,specialityName,instituteNo);(5)学院Institute表:由学院实体集转化而来。
学院Institute(instituteNo,instituteName);(6)题目Title表:由题目实体集转化而来。
题目Title(titleNo,titleName,requirement,population,teacherNo);(7)管理员Manager实体集转化的关系模式。
管理员Manager(managerNo,managerName,sex,phoneNum);(8)选题SelectTitle联系集转化的关系模式。
选题SelectTitle(titleNo,studentNo,teacherNo,wish,admission);(9)用户User关系模式。
用户User(userNo,password,userName,identity);4.模式求精(1)学生Student(studentNo,studentName,sex,birthday,native,nation,classNo);分析Student关系模式得函数依赖关系为:tudentNo->{studentName,sex,birthday,native,nation,classNo}满足BCNF范式。
(2)教师Teacher(teacherNo,teacherName,sex,degree,instituteNo);分析Teacher关系模式得函数依赖关系为:teacherNo->{teacherName,sex,degree,instituteNo}满足BCNF范式。
(3)班级Class(classNo,className,specialityNo)分析Class关系模式得函数依赖关系为:classNo->{className,specialityNo}满足BCNF范式。
(4)专业Speciality(specialityNo,specialityName,instituteNo);分析Speciality关系模式得函数依赖关系为:specialityNo->{specialityName,instituteNo}满足BCNF范式。
(5)学院Institute(instituteNo,instituteName);分析Speciality关系模式得函数依赖关系为:instituteNo->{instituteName}满足BCNF范式。
(6)题目Title(titleNo,titleName,requirement,population,teacherNo);分析Speciality关系模式得函数依赖关系为:titleNo->{titleName,requirement,population,teacherNo}满足BCNF范式。
5.表的设计(1)学生Student表(studentNo,studentName,sex,birthday,native,nation,classNo)(2)教师Teacher表(teacherNo,teacherName,sex,degree,instituteNo)(3)班级Class表(classNo,className,specialityNo);(4)专业Speciality表(specialityNo,specialityName,instituteNo);(5)学院Institute表(instituteNo,instituteName);(6)题目Title表(titleNo,titleName,requirement,population,teacherNo);(7)管理员Manager表(managerNo,managerName,sex,phoneNum);(8)选题SelectTitle表(titleNo,studentNo,teacherNo,wish,admission);(9)用户User表(userNo,password,userName,identity);SET NAMES utf8mb4;SET FOREIGN_KEY_CHECKS = 0;-- ------------------------------ Table structure for class-- ----------------------------DROP TABLE IF EXISTS `class`;CREATE TABLE `class` (`classNo` char(8) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '班级编号',`className` varchar(20) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '班级名称',`specialityNo` char(5) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '专业编号',PRIMARY KEY (`classNo`) USING BTREE) ENGINE = InnoDB CHARACTER SET = utf8 COLLATE = utf8_general_ci ROW_FORMAT = Compact;-- ------------------------------ Table structure for institute-- ----------------------------DROP TABLE IF EXISTS `institute`;CREATE TABLE `institute` (`instituteNo` char(3) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '学院编号',`instituteName` varchar(20) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '学院名称',PRIMARY KEY (`instituteNo`) USING BTREE) ENGINE = InnoDB CHARACTER SET = utf8 COLLATE = utf8_general_ci ROW_FORMAT = Compact;-- ------------------------------ Table structure for manager-- ----------------------------DROP TABLE IF EXISTS `manager`;CREATE TABLE `manager` (`managerNo` char(4) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '管理员编号',`managerName` varchar(20) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '',`sex` char(2) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '性别',`phoneNum` varchar(13) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '联系方式',PRIMARY KEY (`managerNo`) USING BTREE) ENGINE = InnoDB CHARACTER SET = utf8 COLLATE = utf8_general_ci ROW_FORMAT = Compact;-- ------------------------------ Table structure for selecttitle-- ----------------------------DROP TABLE IF EXISTS `selecttitle`;CREATE TABLE `selecttitle` (`titleNo` char(9) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '题目编号',`studentNo` char(12) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '学号',`teacherNo` char(6) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '教师编号',`wish` char(4) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '第一志愿/第二志愿',`admission` char(1) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '是/否',PRIMARY KEY (`titleNo`, `studentNo`, `teacherNo`) USING BTREE) ENGINE = InnoDB CHARACTER SET = utf8 COLLATE = utf8_general_ci ROW_FORMAT = Compact;-- ------------------------------ Table structure for speciality-- ----------------------------DROP TABLE IF EXISTS `speciality`;CREATE TABLE `speciality` (`specialityNo` char(5) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '专业编号',`specialityName` varchar(20) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '专业名称',`instituteNo` varchar(3) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '学院编号',PRIMARY KEY (`specialityNo`) USING BTREE) ENGINE = InnoDB CHARACTER SET = utf8 COLLATE = utf8_general_ci ROW_FORMAT = Compact;-- ------------------------------ Table structure for student-- ----------------------------DROP TABLE IF EXISTS `student`;CREATE TABLE `student` (`studentNo` char(12) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '学号',`studentName` varchar(20) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '',`sex` char(2) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '性别,男、女',`birthday` date NULL DEFAULT NULL COMMENT '出生日期',`native` varchar(20) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '籍贯',`nation` varchar(10) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '民族',`classNo` char(8) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '班级编号',PRIMARY KEY (`studentNo`) USING BTREE) ENGINE = InnoDB CHARACTER SET = utf8 COLLATE = utf8_general_ci ROW_FORMAT = Compact;-- ------------------------------ Table structure for teacher-- ----------------------------DROP TABLE IF EXISTS `teacher`;CREATE TABLE `teacher` (`teacherNo` char(6) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '教师编号',`teacherName` varchar(20) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '',`sex` char(2) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '性别',`degree` varchar(10) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '学位',`instituteNo` char(3) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '学院编号',PRIMARY KEY (`teacherNo`) USING BTREE) ENGINE = InnoDB CHARACTER SET = utf8 COLLATE = utf8_general_ci ROW_FORMAT = Compact;-- ------------------------------ Table structure for titleDROP TABLE IF EXISTS `title`;CREATE TABLE `title` (`titleNo` char(9) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '题目编号',`titleName` varchar(20) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '题目名称',`requirement` varchar(100) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '要求',`population` int(11) NULL DEFAULT NULL COMMENT '人数',`teacherNo` varchar(6) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '教师编号',PRIMARY KEY (`titleNo`) USING BTREE) ENGINE = InnoDB CHARACTER SET = utf8 COLLATE = utf8_general_ci ROW_FORMAT = Compact;-- ------------------------------ Table structure for userDROP TABLE IF EXISTS `user`;CREATE TABLE `user` (`userNo` varchar(12) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '账号',`password` varchar(20) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '密码',`userName` varchar(20) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '用户名称',`identity` varchar(3) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '身份:学生、教师、管理员',PRIMARY KEY (`userNo`) USING BTREE) ENGINE = InnoDB CHARACTER SET = utf8 COLLATE = utf8_general_ci ROW_FORMAT = Compact;SET FOREIGN_KEY_CHECKS = 1;6.功能设计(1)查看某位学生的基本信息SELECT * FROM student WHERE studentNo=’...’;查看某位教师的基本信息SELECT * FROM teacher WHERE teacherNo='...';(2)学生浏览教师的毕业设计题目SELECT * FROM title(3)教师可录取报名的学生UPDATE selecttitle SET admission='是'WHERE studentNo='...' AND wish='...';(4)教师更新题目信息UPDATE title SET ... WHERE titleNo='...';(5)教师查看每个题目的选题人数SELECT titleNo,teacherNo,COUNT(DISTINCT studentNo) FROM selecttitle GROUP BY titleNo HAVING teacherNo='...';(6)统计每位教师的出题数SELECT teacherNo,COUNT(DISTINCT titleNO)FROM title GROUP BY teacherNo;(7)教师删除某个题目信息(删除)DELETE FROM title WHERE titleNo=’...’;(8)删除已被录取的学生的另一个未录取的选题信息DELETE FROM selecttitle WHERE admission='否' AND studentNo='...';(9)教师查看报了自己题目的某个学生的信息SELECT a.studentNo,studentName,sex,birthday,native,nation,classNoFROM student a,selecttitle bWHERE a.studentNo=b.studentNo AND b.studentNo='...';(10)学生查看自己选题的教师的基本信息SELECT b.teacherNo,teacherName,sex,degree,instituteNameFROM selecttitle a,teacher b,institute cWHERE a.teacherNo=b.teacherNo AND b.instituteNo=c.instituteNo AND a.teacherNo='...';(11)查询学生所在班级,专业SELECT studentNo,studentName,className,specialityName FROM student a LEFT JOIN class b ON a.classNo=b.classNo RIGHT JOIN speciality c ON b.specialityNo=c.specialityNo WHERE studentNo='...';(12)查询选了某个题目的学生的信息SELECT studentNo,studentName,sex,classNoFROM studentWHERE studentNo IN(SELECT studentNo FROM selecttitle WHERE titleNo='...');。