ICode9

精准搜索请尝试: 精确搜索
首页 > 数据库> 文章详细

数据库技术_习题2

2021-10-18 15:01:47  阅读:246  来源: 互联网

标签:grade 数据库 技术 char course sc 习题 成绩 tno


1.请创建一个教师表teacher 其中包括教师号tno char(3),教师名tname char(8),教师性别tsex char(2),教师系tdept char(20),教师职称tglass char(10),教师出生日期tcsrq date,要求,教师号为唯一。

create table 
teacher(tno char(3) unique,
tname char(8),
tsex char(2),
tdept char(20),
tglass char(10),
tcsrq date)

2. 用定义语句创建“宿舍表”sushe,要求宿舍号ssh 文本3 ,宿舍类别sslb文本2,床位数cws 数字整型,宿舍长ssz 文本10位, 宿舍号,宿舍号为主键,并且不为空。

create table 
shuse1(ssh char(3) primary key not null,
sslb char(2),
cws number,
ssz char(10));

3.在课程”表course中增加一列教师号tno 文本3 ,缺省值 000。

alter table 
course add 
tno char(3) default '000' not null;

4. 将教师”表teacher所属系(tdept)长度改为50,约束条件为不为空 ,缺省值为计算机系。

alter table 
teacher alter 
tdept char(50) not null default '计算机系';

5.创建一个名字为v_stu视图,将计算机系平均成绩大于等于80的同学的姓名及平均成绩放入该视图中。(注该视图只有名字和平均成绩两个字段,平均成绩要用pjgrade)表示。

create view 
v_stu as select sname,
avg(grade) as pjgrade 
from student,
sc where student.sno=sc.sno 
and sdept='计算机系' group by sname having avg(grade)>=80;

6.以SC表创建一个索引文件idx_sc1,要求按CNO降降序,GRADE升序。

create index idx_sc1 on sc(cno desc,grade asc);

7.请创建一个视图文件sss,要求其中包括计算机系所有成绩大于65分课程的学生姓名,课程名,成绩,系名,任课教师姓名。

create view 
sss as 
select student.sname,cname,sc.grade,sdept,tname 
from student,course,sc,teacher 
where student.sno=sc.sno 
and sc.cno=course.cno 
and course.tno=teacher.tno 
and sdept='计算机系' 
and sc.grade>65

8. 用视图sss再建另一视图sss1,要求其中包含每个人的姓名,平均成绩,最高成绩,最低成绩等字段,并用中文(姓名,平均成绩,最高成绩,最低成绩表示出来)。

create view 
sss1 as 
select sname as '姓名',
avg(grade) as '平均成绩',
max(grade) as '最高成绩',
min(grade) as '最低成绩'
from sss group by sname

9.请将course表中的tno列删除。

alter table course drop tno

10. 删除索引文件idx_sc1。

drop index idx_sc1 on sc

标签:grade,数据库,技术,char,course,sc,习题,成绩,tno
来源: https://blog.csdn.net/XQC_KKK/article/details/120826243

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有