计算机领域数据库应用(通用)
- 格式:docx
- 大小:38.64 KB
- 文档页数:27
一、请解释下列概念或术语 1. DBS 答:数据库系统(DateBase System,简称DBS)是指引进数据库技术后的计算机系统,实现有组织地、动态地存储大量相关数据,提供数据处理和信息资源共享的便利手段。数据库系统由五部分组成:硬件系统、数据库集合、数据库管理系统及相关软件、数据库管理员和用户。 2. DBMS 答:数据库管理系统(DateBase Management System,简称DBMS),是管理数据库的软件系统。它的主要功能是建立、使用和维护数据库。 二、回答问题(以下问题应简单说明各要点,不宜只罗列各要点。) 1. 数据库系统的构成 2. 数据库管理系统的功能和特点 3. 以关系数据模型为例,说明数据模型三要素包含的内容。 4. 与文件管理数据相比,数据库管理系统有哪些优点 二、1.数据库系统的构成:(一)硬件平台及数据库:(二)软件:(三)人员:最终用户:应用程序员:系统分析员:数据库管理员(DBA): 2(1).数据库管理系统的功能:建立、使用和维护数据库。 (2)数据库管理系统的特点:数据库管理系统(DBMS):它是为数据库的建立,使用和维护而配置的软件;其特点有:1 数据结构化.2 数据冗余小易扩充,3 数据独立于程序,4 数据由DBMS统一管理和控制 3. 数据模型的三要素:1.数据结构:数据结构用于描述系统的静态特性。在数据库系统中,通常按照其数据结构的类型来命名数据模型。2.数据操作:数据操作用于描述系统的动态特征。数据操作是指对数据库中各种对象(型)的实例(值)允许执行的操作的集合,包括操作及有关的操作规则。操作有检索、插入、删除、修改。3.数据完整性约束:数据完整性约束是一组完整性规则的集合。 4. 答: 1.数据共享性 允许不同用户使用同一个数据库,提高了信息利用率。 2.数据的一体化和结构化 数据文件之间互相关联, 单个数据文件又能自成一个表。 3.数据独立性好 数据与程序相互独立,改变数据存储结构,对程序没有影响。 4.冗余度低且可控制 5.对数据可进行集中统一的控制。 三、实体-联系模型设计(教材第2章习题8) 设有如下两个关系表示,试指出每个关系模式的主码、外码,并说明外码的引用关系。 产品(产品号,产品名称,产品价格,生产日期),其中产品名称有重复。 销售(产品号,销售时间,销售数量),假设可同时销售多种产品,但同一产品在同一时间只销售一次。 产品(产品号,产品名称,产品价格,生产日期)中的产品号是产品实体的主码。 销售(产品号,销售时间,销售数量)中的产品号是销售实体的外码。 因为产品名有重复,所以产品号作为主码,来确定唯一产品。销售时在不同的时间可以销售同一产品号的产品,所以产品号在销售中为外码。产品和销售关系为一对多(1:N)。
第二次 一、 回答问题 1. 请给出关系模式规范化的步骤 答:1)对1NF关系进行投影,消除原关系中非主属性对码的函数依赖,将1NF关系转换为若干个2NF关系。 2)对2NF关系进行投影,消除原关系中非主属性对码的传递函数依赖,从而产生一组3NF关系。 3)对3NF关系进行投影,消除原关系中主属性对码的部分函数依赖和传递函数依赖(也就是说,使决定属性都成为投影的侯选码),得到一组BCNF关系。以上三步也可以合并为一步:对原关系进行投影,消除决定属性不是侯选码的任何函数依赖。 4)对BCNF关系进行投影,消除原关系中非平凡且非函数依赖的多值依赖,即可得到一组4NF关系。 5)对4NF关系进行投影,消除原关系中不是由侯选码所蕴含的连接依赖,即可得到一组5NF关系。
2. 什么是视图?视图的作用 答:视图是基于数据库基本表的虚表,它本身并不物理的存储数据,它的数据全部来自于基本表。视图作用:简化数据查询语句;使用户能从多角度看待同一数据;提高了数据安全性;提供了一定程度的逻辑独立性。
3. 数据完整性约束条件的类型 答:数据完整性约束可分为六类:静态列级约束、静态元组约束、静态关系约束、动态列级约束、动态元组约束、动态关系约束。
4. SQL语言如何实现数据的完整性 SQL要实现数据完整性,1.首先要明白数据的完整性有哪些:域完整性/列完整性,实体完整性/行完整性,参照完整性/引用完整性;2.怎样实现:域完整性:(1)定义列时,使用check约束;(2)定义规则;实体完整性:(3)利用primary key;参照完整性:(4) 利用foreign key references。 5. 写出SQL查询语句的基本结构,并说明结构中各子句表示的含义 结构化查询语言包含6个部分: 一:数据查询语言(DQL:Data Query Language): 其语句,也称为“数据检索语句”,用以从表中获得数据,确定数据怎样在应用程序给出。保留字SELECT是DQL(也是所有SQL)用得最多的动词,其他DQL常用的保留字有WHERE,ORDER BY,GROUP BY和HAVING。这些DQL保留字常与其他类型的SQL语句一起使用。 二:数据操作语言(DML:Data Manipulation Language): 其语句包括动词INSERT,UPDATE和DELETE。它们分别用于添加,修改和删除表中的行。也称为动作查询语言。 三:事务处理语言(TPL): 它的语句能确保被DML语句影响的表的所有行及时得以更新。TPL语句包括BEGIN TRANSACTION,COMMIT和ROLLBACK。 四:数据控制语言(DCL): 它的语句通过GRANT或REVOKE获得许可,确定单个用户和用户组对数据库对象的访问。某些RDBMS可用GRANT或REVOKE控制对表单个列的访问。 五:数据定义语言(DDL): 其语句包括动词CREATE和DROP。在数据库中创建新表或删除表(CREAT TABLE 或 DROP TABLE);为表加入索引等。DDL包括许多与人数据库目录中获得数据有关的保留字。它也是动作查询的一部分。 六:指针控制语言(CCL): 它的语句,像DECLARE CURSOR,FETCH INTO和UPDATE WHERE CURRENT用于对一个或多个表单独行的操作。
二、SQL语言创建表(教材第3章37页习题12) 写出创建如下三张表的SQL语句,在定义表的同时定义数据的完整性约束; ·“图书表“结构如下: 书号:统一字符编码定长类型,长度为6,主码; 书名:统一字符编码可变长类型,长度为30,非空; 第一作者:普通编码定长字符类型,长度为10,非空; 出版日期:小日期时间型: 价格:定点小数,小数部分1位,整数部分3位。 ·“书店表”结构如下: 书店编号:统一字符编码定长类型,长度为6,主码: 店名:统一字符编码可变长类型,长度为30,非空: 电话:普通编码定长字符类型,8位长,每一位的取值均是0~9的数字; 地址:普通编码可变长字符类型,40位长; 邮政编码:普通编码定长字符类型,6位长。 ·“图书销售表”结构如下: 书号:统一字符编码定长类型,长度为6,非空; 书店编号:统一字符编码定长类型,长度为6,非空; 销售日期:小日期时间型,非空; 销售数量:微整型,大于等于1. 主码(书号,书店编号,销售日期); “书号”引用“图书表”的“书号”的外码; “书店编号”为引用“书店表”的“书店编号”的外码。 答:CREATE TABLE 图书表( 书号nchar(6) primary key, 书名nvarchar(30) not null, 第一作者char(10) not null, 出版日期smalldatetime, 价格numeric(4,1)) CREATE TABLE 书店表( 书店编号:nchar(6) primary key, 店名:nvarchar(30) not null, 电话:char(8) check (电话 like ‘[0-9] [0-9] [0-9] [0-9] [0-9] [0-9] [0-9] [0-9] ’), 地址 varchar(40), 邮政编码char (6) CREATE TABLE 图书销售表 书号:nvarchar(6) not null, 书店编号:nchar(6) not null, 销售日期:smalldatetime not null, primary key(书号,书店编号,销售日期), foreign key(书号)references 图书表(书号), foreign key (书店编号) references 书店表(书店编号)) 三、SQL语言操作数据库表 以下习题均利用第3章(教材第31页)定义的Student、Course和SC表结构来实现: 1、查询学生选课表中的全部数据。 2、查询计算机系学生的姓名、年龄。 3、查询成绩在70-80分之间的学生,包括学号、课程号和成绩 4、查询计算机系年龄在18-20之间且性别为“男”的学生,包括姓名和年龄。 5、查询“C01”号课程的最高分数。 6、查询计算机系学生的最大年龄和最小年龄。 7、统计每个系的学生人数。 8、统计每门课程的选课人数和考试最高分。 9、统计每个学生的选课门数和考试总成绩,并按选课门数升序显示结果。 10、查询总成绩超过200分的学生,要求列出学号、总成绩。 11、查询选修“C02“号课程的学生的姓名和所在系。 12、查询成绩80分以上的学生姓名、课程号和成绩,并按成绩降序排列结果。 13、查询哪些课程没有人选,要求列出课程号和课程名。(参考教材第52页例40) 14、用子查询实现如下查询: