数据库应用基础(第三版)周察金习题答案习题6

数据库应用基础(第三版)周察金习题答案习题6,第1张

1、试述数据、数据库、数据库管理系统、数据库系统的概念。(3、4、5页) 答:描述事物的符号记录称为数据;数据库是长期储存在计算机内的、有组织的、可共享的数据集合;数据库管理系统是位于用户与 *** 作系统之间的一层数据管理软件; 数据库系统是指在计算机系统中引入数据库后的系统,一般由数据库、数据库管理系统(及其开发工具)、应用系统、数据库管理员和用户构成。 2.使用数据库系统有什么好处(12页) 答:数据库系统使信息系统从以加工数据的程序为中心转向围绕共享的数据库为中心的阶段,这样既便于数据的集中管理,又有利于应用程序的研制和维护,提高了数据的利用率和相容性,提高了决策的可靠性。

3.试述文件系统与数据库系统的区别和联系。(8、9、10页) 答:1)数据结构化是数据库与文件系统的根本区别。 在文件系统中,相互独立的文件的记录内部是有结构的,管其记录内部已有了某些结构,但记录之间没有联系。数据库系统实现整体数据的结构化,是数据库的主要特征之一。 2)在文件系统中,数据的最小存取单位是记录,粒度不能细到数据项。而在数据库系统中,存取数据的方式也很灵活,可以存取数据库中的某一个数据项、一组数据项一个记录或或一组记录。 3)文件系统中的文件是为某一特定应用服务的,文件的逻辑结构对该应用程序来说是优化的,因此要想对现有的数据再增加一些新的应用会很困难,系统不容易扩充。而在数据库系统中数据不再针对某一应用,而是面向全组织,具有整体的结构化。 5.试述数据库系统的特点。(9、10、11页) 答:数据结构化;数据的共享性高、冗余度低、易扩充;数据独立性高;数据由dbms统一管理和控制。

习题5第5题p148

create database 职工_社团

use 职工_社团

create table 职工(

职工号 char(10) primary key,

姓名 char(8),

年龄 smallint default 20,

性别 char(20),

constraint C1 check (性别 in ('男','女')));

create table 社会团体(

编号 char(10) primary key,

名称 char(8),

负责人 char(10),

活动地点 char(20),

constraint C2 foreign key (负责人) references 职工 (职工号));

create table 参加(

职工号 char(10),

编号 char(10),

参加日期 smalldatetime,

constraint C3 primary key (职工号,编号),

constraint C4 foreign key (职工号) references 职工 (职工号),

constraint C5 foreign key (编号) references 社会团体 (编号));

(2)

create view 社团负责人(编号,名称,负责人职工号,负责人姓名,负责人性别)

as select 社会团体编号,社会团体名称,社会团体负责人, 职工职工号,职工性别

from 职工,社会团体,参加

where 社会团体编号=参加编号 and 职工职工号=参加职工号

create view 参加人情况(职工号,姓名,社团编号,社团名称,参加日期)

as select 参加职工号,姓名,社会团体编号,名称,参加日期

from 职工,社会团体,参加

where 职工职工号=参加职工号 and 参加编号=社会团体编号

(3)

select distinct 职工职工号,姓名

from 职工,社会团体,参加

where 职工职工号=参加职工号 and 参加编号=社会团体编号

and 社会团体名称 in('歌唱队','篮球队');

(4)

select

from 职工

where not exists (select

from 参加

where 参加职工号=职工职工号);

(5)

select from 职工

where not exists

(select

from 社会团体

where not exists

(select

from 参加

where 参加职工号=职工职工号 and 参加编号=社会团体编号));

(6)

select 职工号

from 职工

where not exists (select

from 参加 参加1

where 参加1职工号='001'and not exists

(select

from 参加 参加2

where 参加2编号=参加1编号 and 参加2职工号=职工职工号))

(7)

select 编号,count(职工号) as 参加人数

from 参加

group by 编号;

(8)

select TOP 1 名称,count() 参加人数

from 参加,社会团体

where 参加编号=社会团体编号

group by 名称

order by 参加人数 desc

(9)

select distinct 社会团体名称,职工姓名 as 负责人

from 职工,社会团体,参加

where 社会团体编号=参加编号

and 社会团体负责人=职工职工号

and 参加编号 in(select 参加编号

from 参加

group by 参加编号 having count(参加编号)>100)

(10)

grant select,insert,delete on 社会团体 to 李平

with grant option;

grant select,insert,delete on 参加 to 李平

with grant option;

习题6第9题p212

create database 学生选课

use 学生选课

create table 学生(

学号 char(10) primary key,

姓名 char(10),

性别 char(10),

constraint C1 check (性别 in ('男','女')),

年龄 smallint default 20,

所在系 char(20));

create table 课程(

课程号 char(10) primary key,

课程名 char(20),

先行课 char(20));

create table 选课(

学号 char(10),

课程号 char(10),

成绩 smallint,

constraint D1 primary key (学号,课程号),

constraint D2 foreign key (学号) references 学生(学号),

constraint D3 foreign key (课程号) references 课程(课程号))

create index student_ind on 学生(学号)

create index class_ind on 课程(课程号)

create index select_ind on 选课(学号,课程号)

create rule value_rule as @value in ('男','女')

go

exec sp_bindrule 'value_rule','学生性别'

go

create default 性别缺省 as '男'

go

exec sp_bindefault '性别缺省','学生性别'

go

create trigger 选课插入更新 on 选课

for insert,update

as if (select count()

from 学生,inserted,课程

where 学生学号=inserted学号 and 课程课程号=inserted课程号)=0

rollback transaction

go

create trigger delete_all on 学生

for delete

as delete 选课

from 选课,deleted

where 选课学号=deleted学号

go

select 所在系,count(学号)as 学生人数

from 学生

group by 所在系

order by 所在系

compute count(所在系),sum(count(学号))

select

from 学生 inner join 选课 on 学生学号=选课学号

go

select

from 学生 left outer join 选课 on 学生学号=选课学号

go

select

from 学生 right outer join 选课 on 学生学号=选课学号

go

select 选课学号,学生姓名,

学习情况=case

when avg(成绩)>=85 then '好'

when avg(成绩)>=75 and avg(成绩)<85 then '较好'

when avg(成绩)>=60 and avg(成绩)<75 then '一般'

when avg(成绩)<60 then '较差'

end

from 学生,选课

where 学生学号=选课学号

group by 选课学号,姓名

go

只有这些,不知道用得到吗

T1,T2,T3=2,4,8

T1,T3,T2=2,0,2

T2,T1,T3=3,6,24

T2,T3,T1=3,3,6

T3,T1,T2=-1,-2,0

T3,T2,T1=-1,1,2

CREATE PROCEDURE P1

@XH VARCHAR(10) AS

IF @XH NOT IN(SELECT 学号 FROM 选课) INSERT 选课 VALUES(@XH,'1',0)

ELSE IF NOT EXISTS(SELECT FROM 选课 WHERE 学号=@XH AND 成绩>=60)

DELETE FROM 选课 WHERE 学号=@XH

ELSE SELECT FROM 选课 WHERE 学号=@XH

数据库系统基础教程答案 (第三版) 机械工业出版社 岳丽华 -

下载:

如对你有帮助请及时选为满意回答

以上就是关于数据库应用基础(第三版)周察金习题答案习题6全部的内容,包括:数据库应用基础(第三版)周察金习题答案习题6、数据库系统原理及应用教程(第3版)课后习题答案!、数据库题的题谁给个正确的答案啊 。。。万分感谢等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/sjk/10179179.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-06
下一篇 2023-05-06

发表评论

登录后才能评论

评论列表(0条)

保存