首页数据库数据库作业(数据库作业 数据库作业是什么)

数据库作业(数据库作业 数据库作业是什么)

编程之家2023-10-21108次浏览

今天给各位分享数据库作业的知识,其中也会对数据库作业 数据库作业是什么进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!

数据库作业(数据库作业 数据库作业是什么)

数据库设计作业

网购系统,主体设计,需要有以下几大模块:

1、会员管理子模块

如:会员注册、注销、注册时长等级划分等;这其中,有卖、买会员两个状态。

2、商品信息管理子模块

如:商品资料表、店铺表、货架表以及商品库存表等;

3、订单交易管理子模块

数据库作业(数据库作业 数据库作业是什么)

如:订单建立、提交审核以及交易收割成交表以及对库存增、减动态现实,资金交易表,钱款储蓄表等。

4、订单达成评价子模块

如:买、卖双方互评,评价积分设计等

数据库大作业求学霸解答!!!QAQ

答案如下:

1)创建教师表、课程表和教师授课表

create table Teacher

数据库作业(数据库作业 数据库作业是什么)

( Tno char(5) primary key,

Tname char(8),

Tsex char(2),

Tbirth int,

Tdept varchar(30)

);

create table Course

( Cno char(3) primary key,

Cname varchar(30),

Cpno char(3),

Ccredit int

);

create table教师授课表

( Tno char(5),

Cno char(3),

time datetime

);

2)在教师表、课程表和教师授课表上建立主外键约束

alter table教师授课表

add(foreign key(Tno) references Teacher(Tno),

foreign key(Cno) references Course(Cno));

3)建立约束:教师表中教师年龄介于25至60之间

alter table Teacher

add check(Tbirth>=25 and Tbirth<=60);

4)向学生表插入一条记录20050204,'赵勤','女',20,'国贸系'。

insert into Student

values('20050204','赵勤','女',20,'国贸系');

5)在“课程表”的“课程号”列上创建唯一聚集索引。

create unique clustered index idx_cno on Course(Cno);

6)以“课程号”分组,统计各门课程的平均分数大于80分的行。

select Cno,avg(Grade) from SC

group by Cno

having avg(Grade)>80;

7)修改学号为“20050306”的学生信息为:20050206,魏海平,男,企管系。

update Student

set Sno='20050206',Sname='魏海平',Ssex='男',Sdept='企管系'

where Sno='20050306';

8)将学号为“20050304”的学生信息从表中删除。

delete from Student

where Sno='20050304';

9)查询所有任课教师的课程,没有课程的教师对应的课程为空。

select Tname,Cname from Teacher

left outer join教师授课表 on Teacher.Tno=教师授课表.Tno

left outer join Course on教师授课表.Cno=Course.Cno;

10)按课程分组查询计算机学院课程的最低分、最高分和平均分。

select Cno,min(Grade),max(Grade),avg(Grade)

from SC,Student

where SC.Sno=Student.Sno

group by Cno

having Sdept='计算机学院';

数据库作业 数据库作业是什么

数据库作业

第一次

1、指明下列实体间联系的种类:

(1)教研室和教师(假设一个教师只属于一个教研室,一个教研室可有多名教师)

(2)商店和顾客;

(3)国家和首都。

2、指出下列关系模式的主码:

(1)考试情况(课程号,考试性质,考试日期,考试地点)。假设一门主课程在不同的日期可有多次考试,但在同一天只能考一次。多门不同的课程可以同时进行考试。

(2)教师授课(教师号,课程号,授课时数,学年,学期)。假设一名教师在同一学年和学期可以讲授多门课程,也可以在不同学年和学期多次讲授同一门课程,对每门课程的讲授都有一个授课时数。

(3)图书借阅(书号,读者号,借书日期,还书日期)。假设一个读者可以在不同的日期多次借阅同一本书,一个读者可以同时借阅多本不同的图书,一本书可以在不同时间借给不同的读者。但一个读者不能再同一天对同一本书借阅多次。答:课程名、考试日期

答:课程号、学年、学期

答:书号、读者号、借书日期

3、数据库包含哪三级模式?试分别说明每一级模式的作用。

数据库系统包含的三级模式为:内模式、模式和外模式。外模式是对现实系统中用户感兴趣的整体数据结构的局部描述,用于满足不同数据库用户需求的数据视图,是数据库用户能够看见和使用的局部数据的逻辑结构和特征的描述,是对数据库整体数据结构的子集或局部重构。模式是数据库中全体数据的逻辑结构和特征的描述,是所有用户的公共数据视图。内模式是对整个数据库的底层表示,它描述了数据的存储结构。

第二次

1、数据完整性的含义是什么?

答:数据的完整性是为了防止数据库中存在不符合应用语义的数据,为了维护数据的完整性,数据库管理系统提供了一种机制来检查数据库中的数据,看其是否满足语义规定的条件。这些加在数据库数据之上的语义约束条件就是数据完整性约束条件。

2、写出创建如下3张表的SQL语句,要求在定义表的同时定义数据的完整性约束:

(1)“图书表”结构如下:

书号:统一字符编码定长类型,长度为6,主码;

书名:统一字符编码可变长类型,长度为30,非空;

第一作者:普通编码定长字符类型,长度为10,非空;

出版日期:小日期类型;

价格:定点小数,小数部分1位,整数部分3位;

(2)“书店表”结构如下:

书店编号:统一字符编码定长类型,长度为6,主码;

店名:统一字符编码可变长类型,长度为30,非空;

电话:普通编码定长字符类型,8位长,每一位的取值均是0~9的数字;邮政编码:普通编码定长字符类型,6位长;

(3)“图书销售表”结构如下:

书号:统一字符编码定长类型,长度为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图书销售表(

书号 nchar(6) not null,

书店编号 nchar(6) not null,

销售日期 smalldatetime not null,

销售数量 smallint check(销售数量>=1),

primary key(书号,书店编号,销售日期),

foreign key(书号) references图书表(书号),

foreign key(书店编号) references书店表(书店编号))

3、为图书表添加“印刷数量”列,类型为整数,同时添加约束,要求此列的取值要大于等于1000。

答:ALTER TABLE图书表

ADD印刷数量 int check(印刷数量>=1000)

4、删除书店表的“邮政编码”列。

答:ALTER TABLE书店表

DROP COLUMN邮政编码

5、将图书销售表中的“邮政编码”列的数据类型改为整型。

答:ALTER TABLE图书销售表

ALTER COLUMN销售数量 int

第三次

利用第3章定义的student、course和sc表结构实现如下操作。

1、查询学生选课表中的全部数据。

2、查询计算机系的学生的姓名、年龄。

3、查询成绩在70~80分之间的学生的学号、课程号和成绩。

4、查询计算机系年龄在18-20之间且性别为“男”的学生的姓名、年龄。

5、查询课程号为“c01”的课程的最高的分数。

6、查询计算机系学生的最大年龄和最小年龄。

7、统计每个系的学生人数。

8、统计每门课程的选课人数和考试最高分。

9、统计每个学生的选课门数和考试总成绩,并按选课门数升序显示结果。

10、查询总成绩超过200分的学生,要求列出学号、总成绩。

11、查询选修了“c02”号课程的学生的姓名和所在系。

12、查询成绩80分以上的学生的姓名、课程号和成绩,并按成绩降序排列结果。 13、查询哪些学生没有选课,要求列出学号、姓名和所在系。

1. select* from SC

2. select Sname,Sage from Student where Sdept="计算机"

3. select Sno,Cno,Grade from SC where Grade>= 70 and Grade

4. select Sname,Sage from Student where Sage between 18 and 20 and Ssex="男"

5. select top 1 Grade from SC where Cno="C01"

6. select max(Sage),min(Sage) from Student

7. select Sdept,sum(Sno) from Student group by Sdept

8. select course.Cname,sum(sc.Sno),max(Grade) from SC

join studet on Student.Sno= SC.Sno

join Course on Course.Cno= SC.Cno

group by course.cname,max(grade)

9. select sum(Cno),avg(Grade) from SC

join Course on Course.Cno= SC.Cno

join Student on Student.Sno= SC.Sno

order by SC.Sno

10. Select sno,sum(grade)总成绩from sc

Group by sno having sum(grade)> 200

11. select Student.Sname,Student.Sdept from Student

join Course on Course.Cno= SC.Cno

join SC on SC.Sno= Student.Sno

where SC.Cno="C02"

12. select Student.sname,course.cno,sc.grade from sc

join student on student.sno= sc.sno

join course on course.cno= sc.cno

where sc.grade>= 80

order by sc.grade desc

13. Select sname from student s left join sc on s.sno= sc.sno

Where sc.sno is null

第四次

1、查询与VB在同一学期开设的课程的课程名和开课学期。

2、查询与李勇年龄相同的学生的姓名、所在系和年龄。

3、用子查询实现如下查询:(1)查询选修了“c01”号课程的学生的姓名和所在系

(2)查询数学系成绩80分以上的学生的学号、姓名、课程号和成绩(3)查询计算机系考试成绩最高的学生的姓名(4)查询数据结构考试成绩最高的学生的姓名、所在系、性别和成绩。

4、查询没有选修VB课程的学生的姓名和所在系。

5、查询计算机系没有选课的学生的姓名和性别。

6、删除考试成绩低于50分的学生的选课记录。

7、删除没有人选的课程记录。

8、删除计算机系VB成绩不及格学生的VB选课记录。

9、将第2学期开设的所有课程的学分增加1分。

10、将VB课程的学分改为3分。

11、将计算机系学生的年龄增加1岁。

12、将信息系学生的“计算机文化学”课程的考试成绩加5分。

1.Select c2.Cname,c2.Semester from Course c1 JOIN Course c2 on c1.Semester= c2.Semester Where c1.cname="VB" and c2.Cname!="VB"

2. Select s2.Sname,s2.Sdept,s2.Sage

From Student s1 JOIN Student s2 on s1.Sage= s2.Sage

Where s1.Sname="李勇" and s2.Sname!="李勇"

3.⑴ select sname,sdept from student where sno in(

select sno from sc where cno="C01")

⑵ select sno,sname from student where sno in(

select sno from sc where grade> 80)

and sdept="数学系"

⑶ select sname from student s join sc on s.sno= sc.sno

where sdept="计算机系" and grade=(

select max(grade) from sc join student s on s.sno= sc.sno

where sdept="计算机系")

⑷ select sname,sdept,ssex,grade from student s join sc on s.sno= sc.sno

where s.sno in(

select top 1 with ties sno

from sc join course c on c.cno= sc.cno

where cname="数据结构"

order by grade desc

4.Select sname,sdept from student where sno not in(

Select sno from sc join course c on c.cno= sc.cno

Where cname="vb")

5.Select sname,ssex from student where sdept="计算机系"

And sno not in(select sno from sc)

6. Delete from sc where grade

7. Delete from course where cno not in(

Select cno from course)

8.Delete from sc from sc join student s on s.sno= sc.sno

Join course c on c.cno= sc.cno

Where sdept="计算机系" and cname="VB"

And grade

9.Update course set credit= credit+ 2 where semester= 2

10.Update course set credit= 3 where cname="VB"

11.Update student set sage= sage+ 1 where sdept="计算机系"

12.Update SC set grade=grade+5

From course c join sc on c.cno= sc.cno

Join student s on s.sno= sc.sno

where sdept="信息系" and cname="计算机文化学"

第五次

1、第一范式、第二范式和第三范式关系的定义分别是什么?

答:不包含非原子项属性的关系就是第一范式的关系;对于第一范式的关系,如果此关系中的每个非主属性都完全函数依赖于主键,则此关系属于第二范式;对于第二范式的关系,如果所有的非主属·性都不传递依赖于主键,则此关系就是第三范式的。

2、设有关系模式:学生修课(学号,姓名,所在系,性别,课程号,课程名,学

分,成绩)设一个学生可以选多门课程,一门课程可以被多名学生选。一个学生有唯一的所在系,每门课程有唯一的课程名和学分。请指出此关系模式的候选码,判断此关系模式是第几范式的,若不是第三范式的,请将其规范化为第三范式关系模式,并指出分解后的每个关系模式的主码和外码。

答:候选键为:(学号,课程号),它也是此关系模式的主键。由于存在函数依赖:

学号→姓名,课程号→课程名

因此,存在非主属性对主键的部分函数依赖关系,因此它不是第二范式的表。分解如下:学生表(学号,姓名,所在系,性别),主键为“学号”,已属于第三范式。

课程表(课程号,课程名,学分),主键为“课程号”,已属于第三范式。

选课表(学号,课程号,成绩),主键为(学号,课程号),已属于第三范式

第六次

1、设有关系模式:学生(学号,姓名,所在系,班号,班主任,系主任),其语义为:一个学生只在一个系的一个班学习,一个系只有一个系主任,一个班只有一个班主任,一个系可以有多个班。请指出此关系模式的候选码,判断此关系模式是第几范式的,若不是第三范式的,请将其规范化为第三范式关系模式,并指出分解后的每个关系模式的主码和外码。

答:候选键为:学号,它也是此关系模式的主键。

由于不存在非主键属性对主键的部分依赖关系,因此,此关系模式属于第二范式的,但由于存在如下函数依赖:

学号→班号,班号→班主任,因此,存在非主键属性对码的传递依赖关系,同样以及

学号→所在系,所在系→系主任,因此,此关系模式不是第三范式的。对其分解后的结果为:学生基本表(学号,姓名,所在系,班号),主键为“学号”,“班号”为引用班级表表的“班号”的外键,“所在系”为引用系表表的“系名”的外键。

班级表(班号,班主任),主键为“班号”。

系表(系名,系主任),主键为“系名”。

2、设有关系模式:教师授课(课程号,课程名,学分,授课教师号,教师名,授课时数),其语义为:一门课程(有课程号决定)有确定的课程名和学分,每名教师(有教师号决定)有确定的教师名,每门课程可以有多名教师讲授,每名教师也可以讲授多门课程,每名教师对每门课程有确定的授课时数。指出此关系模式的候选码,判断此关系模式是第几范式的,若不是第三范式的,请将其规范化为第三范式关系模式,并指出分解后的每个关系模式的主码和外码。答:此关系模式的候选键为(课程号,授课教师号),它们也是主键。由于存在函数依赖:

课程号→课程名,授课教师号→教师名

因此,存在非主属性对主键的部分函数依赖关系,因此它不是第二范式的表。分解如下:课程表(课程号,课程名,学分),主键为“课程号”,已属于第三范式。

教师表(教师号,教师名),主键为“教师号”,已属于第三范式。

授课表(课程号,授课教师号,授课时数),主键为(课程号,教师号),已属于第三范式。

文章到此结束,如果本次分享的数据库作业和数据库作业 数据库作业是什么的问题解决了您的问题,那么我们由衷的感到高兴!

服务器搭建ftp,如何建立ftp服务器dfs文件服务器?怎么设置win2012 server r2文件服务器配置DFS