数据库管理作业行业动态

首页 行业动态 数据库管理作业

数据库管理作业

2018-01-24 10:03:43


详情:

第一次作业

一、名词解释

1. 视图

答:视图是从一个或几个基本表导出的表。它本身不独立存储在数据库中,即数据库中只存放视图的定义而不存放视图对应的数据。这些数据仍存放在导出视图的基本表中,因此视图是一个虚表。视图在概念上与基本表等同,用户可以在视图上再定义视图。

2. 并发操作

答:并发操作是指在同一时间可能有多个用户对同一数据进行读写操作。

3. 内模式

答:内模式是数据库在物理存储方面的描述,定义所有的内部记录类型、索引和文件的组成方式,以及数据控制方面的细节。

4. 事务

答:数据库系统的一个操作系列,这些操作或者都做,或者都不做,是一个不可分割的工作单位。

5.数据备份

答:数据备份是容灾的基础,是指为防止系统出现操作失误或系统故障导致数据丢失,而将全部或部分数据集合从应用主机的硬盘或阵列复制到其它的存储介质的过程。


二、简答题

1. 与文件管理数据相比,数据库管理系统有哪些优点?

答:1.数据共享性 允许不同用户使用同一个数据库,提高了信息利用率。

2.数据的一体化和结构化 数据文件之间互相关联,单个数据文件又能自成一个表。

3.数据独立性好 数据与程序相互独立,改变数据存储结构,对程序没有影响。

4.冗余度低且可控制

5.对数据可进行集中统一的控制。


2. 试述数据库设计的基本步骤?

答:(1)需求分析阶段:需求收集和分析,得到数据字典和数据流图。 (2)概念结构设计阶段:对用户需求综合、归纳与抽象,形成概念模型,用E-R 图表示。(3)逻辑结构设计阶段:将概念结构转换为某个DBMS 所支持的数据模型。(4)数据库物理设计阶段:为逻辑数据模型选取一个最适合应用环境的物理结构。(5)数据库实施阶段:建立数据库,编制与调试应用程序,组织数据入库,程序试运行。(6)数据库运行和维护阶段:对数据库系统进行评价、调整与修改。


3. 请给出关系模式规范化的步骤?

答:1)对1NF 关系进行投影,消除原关系中非主属性对码的函数依赖,将1NF 关系转换为若干个2NF 关系。

2)对2NF 关系进行投影,消除原关系中非主属性对码的传递函数依赖,从而产生一组3NF 关系。

3)对3NF 关系进行投影,消除原关系中主属性对码的部分函数依赖和传递函数依赖(也就是说,使决定属性都成为投影的侯选码),得到一组BCNF 关系。以上三步也可以合并为一步:对原关系进行投影,消除决定属性不是侯选码的任何函数依赖。

4)对BCNF 关系进行投影,消除原关系中非平凡且非函数依赖的多值依赖,即可得到一组4NF 关系。

5)对4NF 关系进行投影,消除原关系中不是由侯选码所蕴含的连接依赖,即可得到一组5NF 关系。


4. 数据完整性约束有哪几种?SQL 如何实现数据完整性?

答:数据完整性约束可分为六类:静态列级约束、静态元组约束、静态关系约束、动态列级约束、动态元组约束、动态关系约束。

SQL 要实现数据完整性,1. 首先要明白数据的完整性有哪些:域完整性/列完整性,实体完整性/行完整性,参照完整性/引用完整性;2. 怎样实现:域完整性:(1)定义列时,使用check 约束;(2)定义规则;实体完整性:(3)利用primary key;参照完整性:(4) 利用foreign key references。

5. SQL Server 2000的安全认证过程?

答:SQLServer 2000支持两种认证模式,一是Windows 认证,二是混合模式。

1) Windows 认证,这是SQLServer 2000的默认身份验证模式。Windows 验证的方式是

利用windows 的验证机制,由于进入windows 的用户有些拥有很高的权限,所以通常也能进入SQLServer 2000 服务器。为避免重复验证,SQLServer 2000认可windows 的安全机制。只要windows 的账号在SQLServer 2000中有对应的账号就能顺利地直接进入SQLServer 2000。

2) 混合认证模式,这是将windows 认证和SQLServer 2000认证连接在一起。使用

SQLServer 2000认证时,系统管理员创建一个登陆账号口令,并将它们存储在

SQLServer 2000中,当用户连接上SQLServer 2000时,必须提供SQLServer 2000登陆账号和口令。用户也可以通过windows 账号进行连接,这正如windows 认证一样。对于登陆时提供了SQLServer 2000账号者,系统将使用SQLServer 2000身份验证对其进行认证;对于没有提供SQLServer 2000账号或请求windows 身份验证的登陆者,则使用windows 身份验证对其认证。即先查找SQLServer 2000登陆账户,若找不到则去查找windows 登陆账户。


第二次作业

用SQL 语言实现下列1—4小题:现有关系数据库如下:

学生(学号,姓名,性别,专业,奖学金)

课程(课程号,名称,学分)

学习(学号,课程号,分数)

1. 检索获得奖学金的所有学生所学课程的信息,包括学号、姓名、课程名和分数;

2. 检索学生“黎明”所学课程中有不及格课程的课程号、名称和分数;

3. 检索获得奖学金、同时又有不及格成绩的学生信息,包括学号、姓名和专业; (提示:用子查询实现)

4. 检索没有任何一门课程成绩超过90分的所有学生的信息,包括学号、姓名和专业。(提示:用子查询实现)

答:1.select a. 学号,a. 姓名,a. 奖学金,b. 课程名,c. 分数 from 学号as a inner join 学习 as c on a.学号=c.学号 left join

课程 on c.课程号=b.课程号

2.select a. 姓名,b. 课程号,b. 名称,c. 分数 from 学生 a inner join 学生 as c on a. 学号=c.学号 left join

课程 b on c.课程号=b.课程号 where a.姓名='黎明' and c.分数<60

3.select 姓名, 专业, 奖学金 from 学生 a where a.学号 in (select 学号 from 学习 b where 分数<60)

4.select 学号, 姓名, 专业 where a.学号 in (select 学号 from 学习 b where 分数< 90)


5. 设有关系数据库:职工关系EMPLOYEE (职工号,职工名,街道,城市)

工作关系WORKS (职工号,公司号,工资)

公司关系COMPANY (公司号,公司名,城市)

假设职工可在多个公司兼职,请用SQL 语言写出至少在公司号为‘C2’和‘C5’公司兼职的职工号。

ORKS ⨯W ORKS ) 答:∏1σ2=' c 2' ^5=' c 5' (W

∏1σ2=′c2′^5=′c5′(WORKS×WORKS)

6. 假设学校有多名学生,财务处每年要收一次学费。为财务处收学费工作设计一个数据库,包括两个关系:

学生 (学号,姓名,专业,入学日期)

收费 (学年,学号,学费,书费,总金额)

假设规定属性的类型:学费、书费、总金额为数值型数据;学号、姓名、学年、专业为字

符型数据;入学日期为日期型数据。列的宽度自定义。

试用SQL 语句定义上述表的结构。(定义中应包括主码子句和外码子句) 答:CREA TE TABLE 学生

(学号 CHAR (8),

姓名 CHAR (8),

专业 CHAR (13),

入学日期 DA TE ,

PRIMARY KEY (学号)) ;


CREATE TABLE 收费

(学年 CHAR (10),

学号 CHAR (8),

学费 NUMERIC (4),

书费 NUMERIC (5,2) ,

总金额 NUMERIC (7,2) ,

PRIMARY KEY (学年,学号) ,

FOREIGN KEY (学号) REFERENCES 学生 (学号)


相关 教程

12c OCM升级培训

12c OCM升级培训

11g OCM于2019年12月31日退役,12c OCM成为目前最新、最高版本的Oracle DBA认证。含金量无出其右。}

11g OCP培训

11g OCP培训

11g OCP培训}

OCJP认证培训

OCJP认证培训

OCJP认证培训}

网上报名 免费试学+报名即可领取免费资料

收缩

QQ在线客服

  • 刘老师
  • 在线咨询
  • 麦老师
  • 在线咨询
  • 黄老师
  • 在线咨询
在线免费试课
获取免费课程视频资料