数据库第三次大作业(全答案)

数据库第三次大作业(全答案)
数据库第三次大作业(全答案)

{

4.作业3——存储过程与触发器设计任务

任务:

1)为BookStore数据库增加一个用户oper1,允许oper1对图书表和借还表进行修改操作。

use BookStore

go

exec sp_addlogin operl,'(此处为密码)','BookStore'

go

exec sp_addrolemember'db_datareader','operl'

grant update on图书表to operl

grant update on借还表to operl

2)设计存储过程

a)数据初始化过程sp_Init。包含的操作有:所有的用于测试图书信息、教

师信息、历史记录清空,输入图书分类、输入管理员信息、输入借书规

定。

略,界面进行输入或者代码输入作业用数据

b)某教师在某时间借了某本书,由某管理员办理。

create procedure proc_lendbook

@aid char(10),

@atime datetime,

@ISBN char(20),

@aname nchar(4)

as

begin

update图书表

set状态='借出'

where ISBN=@ISBN

insert into借还表(ISBN,教师工号,借办代理人,借出日期)

values(@ISBN,@aid,@aname,@atime)

end

c)某教师在某时间还了某本书,由某管理员办理

create procedure proc_returnbook

@bid char(10),

@btime datetime,

`

@ISBN char(20),

@bname nchar(4)

as

begin

update图书表

set状态='库存'

where ISBN=@ISBN

update借还表

set还办代理人=@bname,归还日期=@btime

where教师工号=@bid and ISBN=@ISBN

end

d)查看某人的全部借还书记录

create procedure proc_getReaderlog

@cname n char(4),

@

@cid char(10)

as

begin

select b.姓名,c.书名,a.借出日期,归还日期

from借还表 a join教师表 b on a.教师工号=b.教师工号join图书表 c on=

where b.姓名=@cname or b.教师工号=@cid

end

e)。

f)查看某本书的历史流转记录

create procedure proc_getBooklog

@bookname nchar(10),

@ISBN char(20)

as

begin

select教师表.姓名,图书表.书名,借还表.借出日期,归还日期

from借还表 a join教师表 b on a.教师工号=b.教师工号join图书表 c on=

"

where=@ISBN or c.书名=@bookname

end

g)某管理员在某时间给全部借阅过期者发催还邮件。

部分有错误的需要将修改催还业务编号为自增长(identity(1,1)),还有整个表都要允许空值:

例:alter table 催还表

alter column 办代理人 char(4) null

create procedure proc_writeEmailLog

@dname char(4),

@dtime datetime

as

begin

insert into催还表(教师工号)

select教师工号

from借还表a join图书表 b on=join类型表 c on b.类型名=c.类型名

:

where datediff(day, a.借出日期,getdate())>c.借阅期限and a.归还日期is null

update催还表

set办代理人=@dname,催还日期=@dtime

where催还日期is null

end

g)对书名进行模糊搜索(搜索条件可以是多个模糊列值的组合,例如:搜索书名包含“网络”两个字,并且是近3年出版的图书)

create procedure proc_search

{

@bookname nchar(10),

@max tinyint

as

begin

select*

from图书表

where datediff(year,出版时间,getdate())<@max and 书名like'%'+@bookname+'%' end

3)设计触发器

a)当oper1用户对图书状态进行修改时,自动在借还表追加相应的数据。

create trigger tri_a

on图书表after update

as

declare @status char(4)

declare @ISBN char(20)

select @status=状态from inserted

select @ISBN=ISBN from inserted

if user_name()='operl'

begin

if @status='借出'

insert into借还表(ISBN,借办代理人,借出日期)

:

values(@ISBN,user_name(),getdate())

else if @status='库存'

update借还表

set还办代理人=user_name(),归还日期=getdate()

where ISBN=@ISBN

end

b)不允许oper1用户对催还表信息进行删除操作,如果删除进行回滚。

create trigger tri_b

on催还表after delete

as

if user_name()='operl'

begin

if (select count(*)from deleted)>0

rollback

end

数据库系统概论第五版课后习题答案王珊版

第二章关系数据库 1 .试述关系模型的三个组成部分。 答:关系模型由关系数据结构、关系操作集合和关系完整性约束三部分组成。 2 .试述关系数据语言的特点和分类。 答:关系数据语言可以分为三类: 关系代数语言。 关系演算语言:元组关系演算语言和域关系演算语言。 SQL:具有关系代数和关系演算双重特点的语言。 这些关系数据语言的共同特点是,语言具有完备的表达能力,是非过程化的集合操作语言,功能强,能够嵌入高级语言中使用。 3 (略) 4 . 5 . 述关系模型的完整性规则。在参照完整性中,为什么外部码属性的值也可以为空?什么情况下才可以为空? 答:实体完整性规则是指若属性A是基本关系R的主属性,则属性A不能取空值。 若属性(或属性组)F是基本关系R的外码,它与基本关系S的主码Ks相对应(基本关系R和S不一定是不同的关系),则对于R中每个元组在F上的值必须为:或者取空值(F的每个属性值均为空值);或者等于S中某个元组的主码值。即属性F本身不是主属性,则可以取空值,否则不能取空值。 6.设有一个SPJ数据库,包括S,P,J,SPJ四个关系模式: 1)求供应工程J1零件的供应商号码SNO: πSno(σJno=‘J1’(SPJ)) 2)求供应工程J1零件P1的供应商号码SNO: πSno(σJno=‘J1’∧Pno=‘P1‘(SPJ)) 3)求供应工程J1零件为红色的供应商号码SNO: πSno(πSno,,Pno(σJno=‘J1‘(SPJ))∞πPno(σCOLOR=’红‘(P))) 4)求没有使用天津供应商生产的红色零件的工程号JNO: πJno(SPJ)- πJNO(σcity=‘天津’∧Color=‘红‘(S∞SPJ∞P) 5)求至少用了供应商S1所供应的全部零件的工程号JNO: πJno,Pno(SPJ)÷πPno(σSno=‘S1‘(SPJ)) 7. 试述等值连接与自然连接的区别和联系。 答:连接运算符是“=”的连接运算称为等值连接。它是从关系R与S的广义笛卡尔积中选取A,B属性值相等的那些元组 自然连接是一种特殊的等值连接,它要求两个关系中进行比较的分量必须是相同的属性组,并且在结果中把重复的属性列去掉。 8.关系代数的基本运算有哪些? 如何用这些基本运算来表示其他运算? 答:并、差、笛卡尔积、投影和选择5种运算为基本的运算。其他3种运算,即交、连接和除,均可以用这5种基本运算来表达。 第三章关系数据库语言SQL 1 .试述sQL 语言的特点。 答: (l)综合统一。sQL 语言集数据定义语言DDL 、数据操纵语言DML 、数据控制语言DCL

SQL第6周数据库上机作业答案

第二次(第6周)上机作业 一、用T-SQL语句在E:\DATA\文件夹中创建一个教师信息数据库teacher,该数据库包含:(界面方式也要会) 1、一个主数据文件逻辑名‘teacherdata1 ’, 物理名‘E:\DATA\tdata1.mdf ’, 初始容量1MB,最大容量10MB,每次增长量为15%。 2、一个辅助数据文件逻辑名‘teacherdata2 ’ 物理名‘E:\DATA\tdata2.ndf ’, 初始容量2MB,最大容量15MB,每次增长量为2MB。 3、两个数据文件不单独创建文件组,即使用默认的PRIMARY组; 4、一个事务日志文件逻辑名‘teacherlog’物理名‘E:\DATA\teacherlog.ldf ’,初始容量500KB,最大容量不受限制,每次增长量为500KB。 先确认E:\DATA\文件夹已创建, CREATE DATABASE teacher ON PRIMARY ( NAME = teacherdata1 , FILENAME = 'E:\DATA\tdata1.mdf' , SIZE =5MB , MAXSIZE= 10 , FILEGROWTH = 15% ) , ( NAME = teacherdata2 , FILENAME = 'E:\DATA\tdata2.ndf' , SIZE = 2 , MAXSIZE= 15 , FILEGROWTH = 2MB ) LOG ON /* 创建事务日志文件*/ ( NAME = teacherlog , FILENAME = 'E:\DATA\teacherlog.LDF', SIZE = 500 KB ,/* 初始容量,KB单位不能省略*/ MAXSIZE = UNLIMITED ,/* 日志文件最大容量不受限制*/ FILEGROWTH = 500 KB/* 增长量KB 不能省略*/ ) 二、修改数据库“teacher”,增加两个文件组,文件组名:Gteacher1和Gteacher2。ALTER DATABASE teacher Add filegroup Gteacher1 ALTER DATABASE teacher Add filegroup Gteacher2 三、增加一个辅助数据文件,文件逻辑名teacherdata3,物理名为:E:\data\ teacherdata3.ndf’,初始大小为20MB,最大100MB,增量10MB,归属于文件组“Gteacher1”。 Alter database teacher Add file

数据库原理作业

数据库原理作业 客观题预算成绩:100 分 题号:1 题型:单选题(请在以下几个选项中选择唯一正确答案) 在关系数据库设计中,设计关系模式是( )的任务 A、A)需求分析阶段 B、B)概念设计阶段 C、C)逻辑设计阶段 D、D)物理设计阶段 学员答案:C 正确性:正确 题号:2 题型:单选题(请在以下几个选项中选择唯一正确答案) 存取方法设计是数据库设计的( )阶段的任务。 A、一个1:1联系可以转换为一个独立的关系模式,也可以与联系的任意一端实体所对应的关系模式合并 B、一个1:n联系可以转换为一个独立的关系模式,也可以与联系的n端实体所对应的关系模式合并 C、一个m:n联系可以转换为一个独立的关系模式,也可以与联系的任意一端实体所对应的关系模式合并 D、三个或三个以上的实体间的多元联系转换为一个关系模式 学员答案:C 正确性:正确 题号:3 题型:单选题(请在以下几个选项中选择唯一正确答案) 数据流图属于数据库设计的哪个阶段的工具?( ) A、需求分析阶段 B、概念结构设计阶段 C、逻辑结构设计阶段 D、物理结构设计阶段 学员答案:A 正确性:正确 题号:4 题型:单选题(请在以下几个选项中选择唯一正确答案) 在数据库设计中,将ER图转换成关系数据模型的过程属于( )。 A、需求分析阶段 B、逻辑设计阶段 C、概念设计阶段 D、物理设计阶段 学员答案:B

题号:5 题型:单选题(请在以下几个选项中选择唯一正确答案) 在数据库设计的需求分析阶段,描述数据与处理之间关系的方法是() A、ER图 B、业务流程图 C、数据流图 D、程序框图 学员答案:C 正确性:正确 题号:6 题型:单选题(请在以下几个选项中选择唯一正确答案) 建立索引属于数据库的() A、概念设计 B、逻辑设计 C、物理设计 D、实现与维护设计 学员答案:C 正确性:正确 题号:7 题型:单选题(请在以下几个选项中选择唯一正确答案) 在关系数据库设计中,设计关系模式是____的任务。 A、需求分析阶段 B、概念设计阶段 C、逻辑设计阶段 D、物理设计阶段 学员答案:C 正确性:正确 题号:8 题型:单选题(请在以下几个选项中选择唯一正确答案) 从E-R模型向关系模式转换时,一个m:n联系转换为关系模式时,该关系模式的码是 A、A)m端实体的码 B、B)n端实体的码 C、C)m端实体码与n端实体码的组合 D、D)重新选取其他属性 学员答案:C 正确性:正确 题号:9 题型:多选题(请在复选框中打勾,在以下几个选项中选择正确答案,答案可以

北大数据库原理上机考题练习及参考答案 练习二(商品、顾客、购买)

题目: 现有一个商店的数据库,记录顾客及其购物情况,由下面三个表组成:商品(商品号,商品名,单价,商品类别,供应商); 顾客(顾客号,姓名,住址); 购买(顾客号,商品号,购买数量); 试用SQL语言完成下列功能: 1 建表,在定义中要求声明: (1)每个表的主外码; (2)顾客的姓名和商品名不能为空值; (3)单价必须大于0,购买数量必须再0到20之间; 2 往表中插入数据: 商品(M01,佳洁士,8.00,牙膏,宝洁; M02,高露洁,6.50,牙膏,高露洁; M03,洁诺,5.00,牙膏,联合利华; M04,舒肤佳,3.00,香皂,宝洁; M05,夏士莲,5.00,香皂,联合利华; M06,雕牌,2.50,洗衣粉,纳爱斯 M07,中华,3.50,牙膏,联合利华; M08,汰渍,3.00,洗衣粉,宝洁; M09,碧浪,4.00,洗衣粉,宝洁;) 顾客(C01,Dennis,海淀; C02,John,朝阳; C03,Tom,东城; C04,Jenny,东城; C05,Rick,西城;) 购买 (C01,M01,3;C01,M05,2; C01,M08,2;C02,M02,5; C02,M06,4;C03,M01,1; C03,M05,1;C03,M06,3; C03,M08,1;C04,M03,7; C04,M04,3;C05,M06,2; C05,M07,8;) 商品有9 条,顾客有5条, 购买有5条

3 用SQL语句完成下列查询: (1)求购买了供应商"宝洁"产品的所有顾客; (2)求购买的商品包括了顾客"Dennis"所购买商品的顾客(姓名);(3)求牙膏卖出数量最多的供应商。 4 将所有的牙膏商品单价增加10%。 5 删除从未被购买的商品记录。 参考答案: create table product ( productno char(10) not null, productname char(15) not null, price float(15), sort char(10), supplier char(20), primary key (productno), check (price > 0) ) create table customer ( customerno char(10) not null, customername char(15) not null, address char(10), primary key (customerno) ) create table buy ( customerno char(10) not null, productno char(10) not null, num smallint, primary key (customerno,productno), foreign key (customerno) references customer (customerno), foreign key (productno) references product (productno), check (num between 0 and 20) )

数据库第五次作业

1. use student go select*from student where Sname notlike'刘%' go 2. use student go select*from student where Sname like'沈__' go 3. use student go select*from student where 2017-Sage=1985 go 4. use student go select sno,sname,sage,sdept,ssex= case ssex when'女'then'女生' when'男'then'男生' else'条件不明' end from student go 5. use student go select*from course where Cname like'&数据&'

go 6. use student go select sno,Sname,Ssex,Sage,sdept from student where sno like'_______[1239][1239]%' go 7. use student go select*from sc where Cno=1 orderby grade asc go 8. use student go select sno from sc where cno=1 and sno in(select sno from sc where Cno=2) go 9. use student go select*from course orderby cpno asc go 10. use student go select*from student where sage>(select AVG(sage)from student) orderby sage desc go

2013电大数据库原理与应用作业答案1

一、填空题(共 6 道试题,共 30 分。) 1. 设一个关系为R(A,B,C,D,E),它的最小函数依赖集为FD={A→B,A→C,(A,D) →E},则该关系的候选码为AD,该关系存在着部分函数依赖。 2. 数据库设计是尽量避免冗余,一般采用符合范式的规则来设计,数据仓库在设计时有意引入冗 余,采用反范式的方式来设计。 3. 设一个关系为R(A,B,C,D,E),它的最小函数依赖集为FD={A→B,A→C,(C,D)→E}, 该关系只满足第二范式,若要规范化为第三范式,将得到2个关系。 4. 数据库系统是按数据结构的类型来组织数据的,因此数据库系统通常按照数据结构的类型来命 名数据模型。传统的说法,有三种数据模型:层次模式、网状模型、关系模型。 5. 若一个关系的任何非主属性都不部分依赖和传递依赖于任何候选码,则称该关系达到第三范式。 6. 每个学生可以选修多门课程,每门课程也可以被多个学生选修,所以学生和课程之间是多对多 的联系。 二、判断题(共 6 道试题,共 30 分。) 1. 数据库管理系统是为数据库的建立、使用和维护而配置的软件。 A. 错误 B. 正确 2. 按用户的观点来对数据和信息建模是数据模型。 A. 错误 B. 正确 3. 一个关系中的所有属性都函数依赖于该关系的候选码。 A. 错误 B. 正确 4. 一个学生可以学习多门课程,而一门课程也可以被多个学生学习,所以学生和课程是一对多的 关系。 A. 错误 B. 正确 5. 数据库逻辑设计的任务是将概念模型转换成特定的DBMS所支持的数据模型的过程。 A. 错误 B. 正确 6. 为了对数据库中的数据进行追加、插入、修改、删除、检索等操作,DBMS提供语言或者命令, 称为数据操纵语言DML。 A. 错误 B. 正确

中农大_数据库原理_在线作业_3

中农大数据库原理_在线作业_3 1. 在关系模式规范化过程中,保证分解后产生的模式与原模式等价的定义有() (5分) A分解后的关系相互独立 B分解具有无损连接性,且分解后的关系相互独立 C分解具有无损连接性 D分解具有无损连接性,且保持函数依赖 正确答案您的答案是D回答正确展开 2. 系统故障是指整个系统的正常运行突然被破坏、所有正在运行的事务都非正常终止、内存中数据库缓冲区的信息全部丢失、外部存储设备上的数据未受影响,以下故障不属于系统故障的是() (5分) A系统断电 B操作系统错误 C CPU故障 D运算溢出 正确答案您的答案是D回答正确展开 3. 对表进行水平方向的分割用的运算是() (5分)

A投影 B选择 C交 D连接 正确答案您的答案是B回答正确收起 解析 知识点 2.4 关系代数 4. SQL语言中,删除一个表(或视图)的命令是() (5分) A CLEAR B DELETE C REMOVE DDROP 正确答案您的答案是D回答正确展开 5. SQL语言具有数据定义、查询、数据操作和控制等功能。其中,CREATE、DROP、ALTER语句实现的是() (5分) A数据操纵 B数据控制

C数据查询 D数据定义 正确答案您的答案是D回答正确展开 6. 现有表book,字段:id (int),title (varchar),price (float); 其中id字段设为主键,使用insert语句向book表中插入数据,以下语句正确的是() (5分) A insert into book (title,price) values('java',100) B insert book values('java',100) C insert into book values ('java',100) DINSERT INTO BOOK (ID,TITLE,PRICE) VALUES(1,'JAVA',100) 正确答案您的答案是D回答正确展开 7. SQL语言是()的语言,容易学习 (5分) A格式化 B导航式 C非过程化 D过程化 正确答案您的答案是C回答正确展开

《数据库原理及应用》第三次在线作业参考答案

作业 第1题关系代数的基本操作组成关系代数的完备操作集,其他操作均可以由 基本操作来表达。具体而言,关系代数的基本操作有()。 您的答案:C 题目分数:0.5 此题得分:0.5 批注:课件第七章 第2题在具有非过程性查询语言的数据库系统中,()是查询处理的核心。 您的答案:B 题目分数:0.5 此题得分:0.5 批注:概述 第3题关系数据库系统的查询处理包括两个方面的内容:查询优化和()。 您的答案:A 题目分数:0.5 此题得分:0.5 批注:概述 第4题()是选择操作中的线性搜索算法。 您的答案:D 题目分数:0.5 此题得分:0.5 批注:启发式代数优化算法 第5题()是选择操作中的主索引搜索算法。 您的答案:B 题目分数:0.5 此题得分:0.5 批注:启发式代数优化算法 第6题设关系R和S的属性个数分别为r和s,则(R×S)操作结果的属性个 数为()。

题目分数:0.5 此题得分:0.5 批注:笛卡尔积 第7题查询处理最终可转化成基本的()代数操作。 您的答案:A 题目分数:0.5 此题得分:0.5 批注:查询处理过程 第8题计算笛卡尔乘积的最简单算法称为()。 您的答案:C 题目分数:0.5 此题得分:0.5 批注:笛卡尔积 第9题在SQL中,表示选择操作的语句为()。 您的答案:A 题目分数:0.5 此题得分:0.5 批注:关系数据库标准语言SQL 第10题在SQL中,表示连接操作的语句为()。 您的答案:B 题目分数:0.5 此题得分:0.5 批注:连接操作 第11题投影操作中不包含主键,需要去除重复()。 您的答案:D 题目分数:0.5 此题得分:0.5 批注:投影操作 第12题关系代数的四个组合操作是:交、自然连接、连接和()。您的答案:C 题目分数:0.5 此题得分:0.5

东北财经大学16秋《数据库原理与应用X》在线作业

东北财经大学16秋《数据库原理与应用X》在线作业 一、单选题(共10道试题,共40分。) 1.创建基本表就是定义基本表的____。 A.大小 B.类型 C.结构 D.内容 满分:4分 2.数据的____是指根据数据库逻辑结构设计和物理设计的结果将原始数据存放到数据库中去。 A.输出 B.载入 C.结构 D.处理 满分:4分 3.驱动程序是ODBC的核心部件,每个____对应一个相应的驱动程序。 A.元组 B.基本表 C.数据库 D.数据库系统 满分:4分 4.企业发展Intranet是企业____发展的需要。 A.管理 B.业务 C.国际化 D.产业化 满分:4分 5.B/S三层结构中,____负责数据管理,这一层由数据库服务器实现。 A.表示层 B.功能层 C.数据层

D.使用层 满分:4分 6.SELECT语句中____子句的作用是对结果集按<列名2>的值的升序或降序进行排序。 A.FROM B.WHERE C.ORDERBY D.GROUPBY 满分:4分 7.____结构中至少有一个结点有多于一个的父结点。 A.层次模型 B.网络模型 C.关系模型 D.面向对象模型 满分:4分 8.数据库系统阶段,在描述数据的时候,不仅要描述数据本身,还要描述数据之间的____。 A.结构 B.联系 C.调用 D.顺序 满分:4分 9.调查未来系统所涉及的用户的当前职能、业务活动及其流程,属于____阶段的工作。 A.需求分析 B.数据库实施 C.概念结构设计 D.数据库运行和维护 满分:4分 10.B/S三层结构中,____负责显示和与用户交互,这一层由客户机实现。 A.表示层 B.功能层 C.数据层 D.使用层

数据库上机答案

数据库上机1 1、新建工厂数据库factory。 create database factory on( name=factory_data, filename='d:\factory.mdf') log on(name=factory_log, filename='d:\factory.ldf') 2、数据库factory包括职工表worker、部门表depart和职工工资表salary。用SQL语句建立这三个表并输入数据,其表结构及用例数据分别如下: 职工表结构为: 职工号:int; 姓名:char(8) ; 性别:char(2) ; 出生日期:datetime; 党员否:char(2) ; 参加工作:datetime; 部门号:int; 其中职工号为主码。 部门表结构为:

部门号:int; 部门名:char(10); 其中部门号为主码。 职工工资表结构为: 职工号:int; 日期:datetime; 工资:decimal(6,1) ; 其中职工号和日期为主码。

create table worker ( 职工号int primary key, 姓名char(8) , 性别char(2), 出生日期datetime, 党员否char(2), 参加工作datetime, 部门号int ) create table depart ( 部门号int primary key, 部门名char(10)

) create table salary ( 职工号int, 日期datetime, 工资decimal(6,1), Primary key(职工号,日期) ) 3. 显示部门的详细信息。 select * from depart 4.查询3号职工的工资单。 select * from salary where职工号=3 5.显示所有职工的姓名及年龄,并按姓名升序显示。 select 姓名, 2015-year(出生日期) '年龄' from worker order by姓名6. 求出各部门的部门号及党员人数。 select 部门号,count(党员否) '党员人数' from worker where 党员否='是' group by 部门号 7. 在worker表的“姓名”列创建唯一索引nameindex。 create unique index nameindex on worker (姓名) 数据库上机2 1. 查询12月份过生日的名单。 答:select 姓名from worker where month(出生日期)= 12 2. 查询所有姓刘的职工信息。 select * from worker where 姓名like ‘刘%’ 3. 显示所有职工的职工号和2011年2月份的工资数。 select 职工号,工资from salary where year(日期)=2011 and month(日期)=2 4. 查询1号部门所有职工的姓名和工资,并按工资降序排列。

数据库原理与应用作业及答案

数据库原理与应用作业参考答案 第1章作业及参考答案 1 解释如下概念: 实体,属性,码,数据,DB,DBMS,DBS,DBA 2 试述数据库系统的特点,并与之比较文件系统的缺点 3 试述DBA的职责 4 就你所知,用E-R图描述一个简单的应用系统(如学籍管理,物资收发存管理等)的概念模型。 答: 1.DB:数据库,数据存储的”仓库”,在DBMS的集中管理下,有较高数据独立性,有较少冗余\相互间 有联系的数据集合. DBS:包括数据库的计算机系统,包括计算机硬件、软件与人员,包含数据库,数据库管理系统,数据库应用系统等。 其它参见教材。 2.数据库系统主要包括面向全组织的数据库结构,有较好的数据与程序独立性,有较少的冗余,有完整的控制技术,最小存取单位是数据项等特点。与之相对应的文件系统是:独立性不高,冗余大,无控制技术,最小存取单位为记录。 3.参见教材。 4.见电子教案例题,最好自己能描述一个。 第2章作业及参考答案 1.名词解释 码、关系、元组 2.试用关系代数、QBE写出如下查询: (1)找出张三的学号与年龄 (2)找出成绩>=90的学生学号与姓名 (3)找出选修数据库的所有学生的学号、姓名、年龄及成绩 表为:S(S#,SN,SA),C(C#,CN,ST),SC(S#,C#,G)

参考解答: 1.码,关系,元组:参见教材。 2 (1)ΠS#,SA(δSN=‘张三’(S) ) (2)ΠS#,SN(S|ⅹ|δG>=90(SC ). QBE参见书 (3) ΠS#,SN,SA,G(S|ⅹ|SC. |ⅹ|δCN>=’数据库’(C )), QBE参见书 第3章作业及参考答案 设有下列关系模式: S(sno,SN,AGE,SEX,dno),S表示学生,其中sno表示学号,SN表示姓名,AGE表示年龄,SEX表示性别,Dno表示学生所在系号,要求sno为主码,SEX为‘男’,‘女’或‘其它’;age在12到65之间. C(cno,CN),C表示课程,其中cno表示课程编号,CN表示课程名称,主码为cno; SC(sno,cno,GRADE),SC表示学生选课,其中sno为选课的学生学号,cno为学生所选课程编号,GRADE表示学生成绩,0到100;主码为sno,cno,外部码分别为sno,cno 请用SQL语言完成下列操作: (1)创建上面三个基本表;(考虑关系的完整性) 答:create table S(sno char(7) primary key, SN char(8), AGE number(2) check(age between 12 and 65), SEX char(4) check (sex in (‘男’,’女’,’其它’), dno char(3)) create table c(cno char(3) primary key,cn varchar2(32))

数据库上机实验(有答案)

数据库上机实验内容及要求(第二部分) 1.建立工厂管理数据库 工厂(包括厂名和厂长名)需要建立一个管理数据库存储以下信息: (1)一个厂内有多个车间,每个车间有车间号、车间主任姓名、地址和联系电话; (2)一个车间有多个工人,每个工人有职工号、姓名、年龄、性别和工种; (3)一个车间生产多种产品,产品有产品号和价格;每种产品只能由一个车间生产; (4)一个车间制造多种零件,一种零件也可能为多个车间制造。零件有零件号、重量和价格; (5)一种产品可由多种零件组成,一种零件也可以装配出多种产品; (6)产品和零件均存入仓库; (7)厂内有多个仓库,仓库有仓库号、仓库主任姓名和电话。 根据以上需求分析结果,按照下述要求,设计并建立工厂管理数据库。 ◆分析实体及联系,设计E-R图。 ◆将E-R图转换成关系模式,并规范化到3NF。 ◆在Microsoft SQL Server2000中基于“企业管理器”建立数据库及相关对象(主 码,外码,索引,约束等)。 ◆测试数据入库 2.基于“查询分析器”,完成并保存下述题目的SQL脚本 (1)建立“工种”是“钳工”的所有职工详细信息的视图; create view View_工人_钳工 as select* from职工表 where工种='钳工' with check option (2)建立“车间号”是“CJ01”的钳工详细信息的视图; create view View_钳工_CJ01 as select* from View_工人_钳工 where车间号='CJ01' (3)建立使用了“零件号”是“LJ0002”的所有产品详细信息的视图; create view View_产品_零件LJ0002 as select产品表.产品号,价格,车间号,仓库号 from装配表,产品表 where装配表.产品号=产品表.产品号and零件号='LJ0002'(4)对零件表按照“零件号”建立唯一索引; create unique index Index_U_零件号on零件表(零件号) (5)对职工表按照“性别”建立聚簇索引; create clustered index Index_C_性别on职工表(性别) (6)查询使用了“零件号”是“LJ0002”的产品的生产车间号;

数据库第五章作业

第五、六章练习题 一、选择题 1、在关系数据库设计中,子模式设计是在__________阶段进行。[ B] A.物理设计B.逻辑设计C.概念设计D.程序设计 2、设有关系R(A,B,C)的值如下: A B C 2 2 3 2 3 4 3 3 5 下列叙述正确的是(B) A.函数依赖A→B在上述关系中成立B.函数依赖BC→A在上述关系中成立C.函数依赖B→A在上述关系中成立D.函数依赖A→BC在上述关系中成立 3、数据库设计阶段分为(D ) A. 物理设计阶段、逻辑设计阶段、编程和调试阶段 B. 模型设计阶段、程序设计阶段和运行阶段 C. 方案设计阶段、总体设计阶段、个别设计和编程阶段 D. 概念设计阶段、逻辑设计阶段、物理设计阶段、实施和调试阶段 4、下列说法中不正确的是(C)。 A. 任何一个包含两个属性的关系模式一定满足3NF B. 任何一个包含两个属性的关系模式一定满足BCNF C. 任何一个包含三个属性的关系模式一定满足3NF D. 任何一个关系模式都一定有码

5、设有关系模式R(A,B,C,D),F是R上成立的函数依赖集,F={B→C,C→D},则属性C的闭包C+为( C ) A.BCD B.BD C.CD D.BC 6、在数据库设计中,将ER图转换成关系数据模型的过程属于( B ) A.需求分析阶段 B.逻辑设计阶段 C.概念设计阶段 D.物理设计阶段 7、下述哪一条不是由于关系模式设计不当而引起的?(B) A) 数据冗余B) 丢失修改C) 插入异常D) 更新异常 8、下面关于函数依赖的叙述中,不正确的是(B) A) 若X→Y,X→Z,则X→YZ B) 若XY→Z,则X→Z,Y→Z C) 若X→Y,Y→Z,则X→Z D) 若X→Y,Y′ Y,则X→Y′ 9、设U是所有属性的集合,X、Y、Z都是U的子集,且Z=U-X-Y。下面关 于多值依赖的叙述中,不正确的是(C) A) 若X→→Y,则X→→Z B) 若X→Y,则X→→Y C) 若X→→Y,且Y′?Y,则X→→Y′ D) 若Z=Φ,则X→→Y 第(10)至(12)题基于以下的叙述:有关系模式A(C,T,H,R,S),基中各属性的含义是: C:课程T:教员H:上课时间R:教室S:学生

数据库原理与应用-大作业

数据库大作业 课题名称数据库大作业 专业物联网 班级2班 学号13180211 姓名丁艺铭 教师任国芳 成绩 2015年12月20日

1. 需求分析 本系统的最终用户为学生,由于学生在校友通讯录的身份不同,因此根据我们日常生活中的经验,根据我们所做的其他询问和调查,得出用户的下列实际要求。 1.1 数据流图(DFD) 图1-1 1.2 数据字典(DD) 学校信息表(Sch_id primary key) 学校信息表

2. 概念结构设计 主要是对以上功能的整合,更清晰的将整个数据库的关系表示出来,总ER 图见2-1 2-1总图 3. 逻辑结构设计 关系模式((在Powerdesigner中由概念模型转化为物理数据模型,粘图))

4. 建表SQL语句 由物理数据模型生成SQL Server 2008数据库的建表语句。DELIMITER | CREATE TRIGGER ``.`` < [ BEFORE | AFTER ] > < [ INSERT | UPDATE | DELETE ] > ON [dbo] //dbo代表该表的所有者 FOR EACH ROW BEGIN --do something END | insert 触发器示例 create trigger tri_insert on student for insert as declare @student_id char(10) select @student_id=s.student_id from student s inner join inserted i on s.student_id=i.student_id if @student_id='0000000001' begin raiserror('不能插入1的学号!',16,8) rollback tran end go update触发器示例

全国计算机三级数据库技术上机试题100道

1.【考点分析】本题考查对4位整数的排序。考查的知识点主要包括:数组元素的排序算法,if判断语句和逻辑表达式,以及求余算术运算。 【解题思路】此题属于4位数排序问题。本题需主要解决3个问题:问题1如何取4位数的后3位进行比较;问题2如何按照题目要求的条件(按照每个数的后3位的大小进行降序排列,如果后3位相等,则按照原始4位数的大小进行升序排列)排序;问题3如何将排完序的前10个数存到数组bb中去。 本题的解题思路为:使用双循环对数组按条件进行排序,然后将排完序的前10个数存到数组bb中。对于问题1可以通过算术运算的取余运算实现(aa[i]%1000);问题2通过包含if判断语句的起泡排序法就可以实现。 【参考答案】 void jsSort() { int i,j; /*定义循环控制变量*/ int temp; /*定义数据交换时的暂存变量*/ for(i=0;i<199;i++) /*用选择法对数组进行排序*/ for(j=i+1;j<200;j++) { if(aa[i]%1000aa[j]) /*则要按原4位数的值进行升序排序*/ { temp=aa[i]; aa[i]=aa[j]; aa[j]=temp; } } for(i=0;i<10;i++) /*将排序后的前10个数存入数组b中*/ bb[i]=aa[i]; } 【易错提示】取4位数后三位的算法,if判断语句中逻辑表达式的比较运算符。 2.【考点分析】本题主要考查的知识点包括:C语言循环结构,if判断语句和逻辑表达式,以及分解多位整数的算术运算。 【解题思路】分析题干,本题除给出条件"SIX+SIX+SIX = NINE+NINE"之外,还可得出2个隐含的条件:条件1:SIX和NINE分别是3位和4位的正整数;条件2:SIX的十位数字等于NINE的百位数字,NINE的千位数字和十位数字相等。 本题解题思路:通过嵌套的循环结构可以遍历到所有的3位和4位数,对于每一个3位数及4位数的组合进行题设条件(SIX+SIX+SIX = NINE+NINE)的判断,满足条件的对其分解得到各数位的数字,再进一步判断各位数字是否满足本题隐含的条件(条件1及条件2),如果满足则个数加1,并将该3位数及4位数添加到和值中。 【参考答案】 void countValue() { int i,j; int s2; int n2,n3,n4; for(i=100;i<1000;i++)

北邮-数据库原理与应用-阶段作业一

一、单项选择题(共10道小题,共100.0分) 1. 下面系统中不属于关系数据库管理系统的是______。 A. Oracle B. MS SQL Server C. IMS D. DB2 2. DBS是采用了数据库技术的计算机系统。DBS是一个集合体,包含数据库、计算机硬件、软件和 _____。 A. 系统分析员 B. 程序员 C. 数据库管理员 D. 操作员 3. 对某个具体的数据库应用来说,下列说法中正确的是______。 A. E-R 图是唯一的 B. 数据模型是唯一的 C. 数据库文件是唯一的 D. 以上三个都不是唯一的

4. 以下不属于数据库系统组成的是____________。 A. 硬件系统 B. 数据库管理系统及相关软件 C. 数据库管理员(DBA) 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. 以上三个都是

数据库上机实验题目和答案

试用SQL的查询语句表达下列查询: 1.检索王丽同学所学课程的课程号和课程名。 select Cno ,Cname from c where Cno in (select cno from sc where sno in (select sno from s where sname='王丽' )) 2.检索年龄大于23岁的男学生的学号和姓名。 select sno,sname from s where sex='男' and age>23 3.检索‘c01’课程中一门课程的女学生姓名 select sname from s where sex='女' and sno in (select sno from sc where cno='c01') 4.检索s01同学不学的课程的课程号。 select cno from c where cno not in (select cno from sc where sno ='s01') 5.检索至少选修两门课程的学生学号。 select sc.sno from s,sc where s.sno=sc.sno group by sc.sno having count(https://www.360docs.net/doc/d613372713.html,o)>=2 6.每个学生选修的课程门数。 解法一: select so.sno sno,https://www.360docs.net/doc/d613372713.html,ount,s.sname from(select sc.sno sno,count(sc.sno) ccount from sc,s where s.sno=sc.sno group by sc.sno ) so,s where s.sno=so.sno 解法二: select sc.sno sno,s.sname,count(sc.sno) ccount from sc,s where s.sno=sc.sno group by sc.sno,sname

数据库系统概论第五版课后习题答案王珊

第1章绪论 1 .试述数据、数据库、数据库系统、数据库管理系统的概念。 答: ( l )数据( Data ) :描述事物的符号记录称为数据。数据的种类有数字、文字、图形、图像、声音、正文等。数据与其语义是不可分的。解析在现代计算机系统中数据的概念是广义的。早期的计算机系统主要用于科学计算,处理的数据是整数、实数、浮点数等传统数学中的数据。现代计算机能存储和处理的对象十分广泛,表示这些对象的数据也越来越复杂。数据与其语义是不可分的。 500 这个数字可以表示一件物品的价格是 500 元,也可以表示一个学术会议参加的人数有 500 人,还可以表示一袋奶粉重 500 克。 ( 2 )数据库( DataBase ,简称 DB ) :数据库是长期储存在计算机内的、有组织的、可共享的数据集合。数据库中的数据按一定的数据模型组织、描述和储存,具有较小的冗余度、较高的数据独立性和易扩展性,并可为各种用户共享。( 3 )数据库系统( DataBas 。 Sytem ,简称 DBS ) :数据库系统是指在计算机系统中引入数据库后的系统构成,一般由数据库、数据库管理系统(及其开发工具)、应用系统、数据库管理员构成。解析数据库系统和数据库是两个概念。数据库系统是一个人一机系统,数据库是数据库系统的

一个组成部分。但是在日常工作中人们常常把数据库系统简称为数据库。希望读者能够从人们讲话或文章的上下文中区分“数据库系统”和“数据库”,不要引起混淆。 ( 4 )数据库管理系统( DataBase Management sytem ,简称 DBMs ) :数据库管理系统是位于用户与操作系统之间的一层数据管理软件,用于科学地组织和存储数据、高效地获取和维护数据。 DBMS 的主要功能包括数据定义功能、数据操纵功能、数据库的运行管理功能、数据库的建立和维护功能。解析 DBMS 是一个大型的复杂的软件系统,是计算机中的基础软件。目前,专门研制 DBMS 的厂商及其研制的DBMS 产品很多。著名的有美国 IBM 公司的 DBZ 关系数据库管理系统和 IMS 层次数据库管理系统、美国 Oracle 公司的 orade 关系数据库管理系统、 s 油 ase 公司的 s 油ase 关系数据库管理系统、美国微软公司的 SQL Serve ,关系数据库管理系统等。 2 .使用数据库系统有什么好处? 答: 使用数据库系统的好处是由数据库管理系统的特点或优点决定的。使用数据库系统的好处很多,例如,可以大大提高应用开发的效率,方便用户的使用,减轻数据库系统管理人员维护的负担,等等。使用数据库系统可以大大提高应用开

《数据库原理与应用》作业题

《数据库原理与应用》教学说明及作业题 注意: (1) 教学说明中没有明确注明的章节为要求掌握的内容。 (2) 标注*号的题为思考题。 第一部分:数据库及关系数据库基础 第1章数据库概论 教学说明: 了解: 1.2.5、1.2.6 基本掌握:1.1.2、1.2.4 变换顺序:1.2.3节移至第7-3章,1.3节移至第7-1章。 练习题: 1.什么是数据库、数据库管理系统、数据库系统? 2.数据库系统有哪些特点? 3.简述数据库中数据不一致性的含义。 4. 数据库为什么要努力降低数据的冗余度? 5.数据库管理系统的主要功能有哪些? 6.数据库管理系统的数据控制功能包含哪些方面? 7.举出三个常见的数据库管理系统,并说明其供应商。 8.数据库管理员的职责是什么? 9. 简述DB、DBMS、DBA等英语缩写词的英语全称及汉语意思。 *10. 简述数据库与电子表格的区别与联系 第2章关系数据库概论 教学说明: 了解:2.5 练习题: 1.简述数据模型的含义及组成要素。 2.简述候选码、主码、外码以及主属性等概念的含义。 3.简述关系的基本性质。谈谈对“列的顺序无所谓”与“行的顺序无所谓”两条性质的理解。

4.关系的典型运算有哪些?说明关系的连接运算的作用。 5.简述关系的三类完整性约束,并举例说明。 *6. 熟悉p74习题5中的数据库。 第二部分:数据库语言SQL 第3-1章 SQL及SQL Server概述 教学说明: 基本掌握:3.1.1 变换顺序:3.1.3节移至第7-1章,3.3.3节移至第7-5章。 练习题: 1.简述SQL的含义及特点。 *2.熟悉MS SQL Server的组成。 第3-2章数据库的建立(3.3.1) 教学说明: 基本掌握:3.3.1。 练习题: 1.一个SQL Server数据库至少包括哪些文件?文件的功能是什么? 2.创建SQL Server数据库时,需要做哪几方面的工作? 第3-3章表的建立(3.3.2) 练习题: 1.SQL Server中常用的数据类型有哪些? 2.数据库更新的含义是什么?基本操作有哪些? 第3-4章定义数据完整性(书第5章) 教学说明: 了解:5.5 基本掌握:5.6。 练习题: 1.在SQL中,数据库的三类完整性如何设置? 2.简述Unique约束与主键约束的联系与区别?

相关文档
最新文档