end数据库实验答案Word格式.docx
- 文档编号:14623723
- 上传时间:2022-10-23
- 格式:DOCX
- 页数:12
- 大小:19.67KB
end数据库实验答案Word格式.docx
《end数据库实验答案Word格式.docx》由会员分享,可在线阅读,更多相关《end数据库实验答案Word格式.docx(12页珍藏版)》请在冰豆网上搜索。
CreateTableSC(
SNochar(20)NOTNULL,
CNochar(20)NOTNULL,
Gradefloat,
PrimaryKey(SNo,CNo),
ForeignKey(SNo)ReferencesStudent(SNo)OnDeleteCascade,
ForeignKey(CNo)ReferencesCourse(CNo)
CreateTableT(
TNochar(20)PrimaryKey,
TNamechar(20)NOTNULL,
TSexchar(4)default'
birthdayDateTime,
deptchar(20),
titlechar(20),
addresschar(20)
CreateTableSalary(
TNochar(20)NOTNULL,
jbgzfloat,
zwgzfloat,
hjfloat,
ForeignKey(TNo)ReferencesT(TNo)OnDeleteCascade);
2、用alter修改基本表
(1)在已存在的学生表student中增加一个sdept(系)的新的属性列;
altertableStudentaddDeptchar(20);
(2)将学生表student中sname属性列的数据类型修改为变长字符串varchar(10)。
alterableStudentaltercolumsnamevarchar(10)
3、建立一个临时表,然后将其删除
CreateTabletemp(
ANochar(20)NOTNULL,Bfloat,Cchar(10))
Droptabtetemp
实验二建立与删除索引
1、用createindex在学生表student的学号sno上建立聚簇索引。
CreateClusteredIndexSNo_IndexOnStudent(SNo);
2、在学生表student中,为姓名sname建立非聚簇索引。
CreateIndexSName_IndexOnStudent(SName);
3、在课程表的课程号Cno上建立唯一索引。
CreateUniqueIndexCNo_IndexOnCourse(CNo);
4、在选课表的学号sno、成绩Grade上建立复合索引,要求学号为升序,学号相同时成绩为
降序。
CreateIndexSCNo_IndexOnSC(SNoASC,GradeDESC);
5、用drop删除学生表student的索引。
DropIndexStudent.SNo_Index;
6、增加学生表student中姓名唯一约束。
AlterTableStudentAddUnique(SName);
7、增加学生表student中性别‘男’、‘女’唯一约束。
AlterTableStudentAddConstraint:
SSexcheck(SSex='
orSSex='
女'
8、增加学生表student中年龄18~25岁约束。
SAgecheck(SAge>
=18AndSAge<
=25);
9、增加选课表SC中学号sno的外码约束。
AlterTableSCAddForeignKey(SNo)referencesStudent(SNo);
-
实验三数据的插入、更新及删除操作
1、用insert输入数据。
学生表student的数据
991201
张三
22
男
计算机系
991202
李四
21
信息系
991101
王五
23
数学系
991102
陈六
19
991103
吴七
24
女
000101
刘八
InsertIntoStudentValues('
991201'
'
张三'
22,'
计算机科学与技术系'
991202'
李四'
21,'
信息科学系'
991101'
王五'
23,'
数理系'
991102'
陈六'
19,'
991103'
吴七'
24,'
000101'
刘八'
课程表course的数据
1
数学
5
2
数据结构
4
3
程序设计
数据库原理
操作系统
InsertIntoCourseValues('
1'
数学'
5);
2'
数据结构'
4);
3'
程序设计'
2);
4'
数据库原理'
3);
5'
操作系统'
选课表SC的数据
90
80
85
98
91
InsertIntoSCValues('
90);
80);
85);
98);
91);
基本表T的数据
0001
1968-10
信息
副教授
湘潭
0002
1956-11
教授
长沙
1001
1973-07
计算机
讲师
1008
1970-08
北京
InsertIntoTValues('
0001'
1968-10-10'
副教授'
湘潭'
0002'
1956-11-10'
教授'
长沙'
1001'
1973-07-20'
讲师'
1008'
1970-08-20'
北京'
基本表Salary的数据
1000
300
1300
1500
500
2000
800
200
InsertIntoSalaryValues('
1000,300,1300);
1500,500,2000);
800,200,1000);
*/
2、用delete删除数据记录
(1)删除教师表T中教师号为0001的元组。
(2)删除教师表T中的全部数据。
updatetsetbirthday='
1961-10-04'
whereTno='
DeleteFromT;
3、用update更新数据记录
(1)把0001号教师的基本工资加100。
(2)把所有教师的基本工资都加100。
UpdateSalarySetjbgz=jbgz+100WhereTNo='
UpdateSalarySetjbgz=jbgz+100
实验四数据的查询
1、简单查询,用select检索
(1)查询所有学生的基本情况。
select*fromstudent;
(2)查询教师每月应交纳的个人所得税。
selecthj*0.005asmonthshuifromSalary;
(3)查询张三与李四两位同学的基本情况。
select*fromstudentwheresname='
orsname='
;
(4)查询9911班学生的基本信息(规定学生学号的前四位是班级号)。
select*fromstudentwheresnolike'
9911%'
(5)查询所有年龄在20岁以下的学生姓名及其年龄。
selectsname,sagefromstudentwheresage<
20;
(6)查询选修了2门以上课程的学生学号。
selectsnofromSCgroupbysno
havingcount(*)>
2;
2、多表查询,用select检索
(1)查询教师的收入情况,包括教师号、姓名及月总收入。
selectT.Tno,Tname,hj//不能写成selectTno,因为Tno不明确
fromT,Salary
whereT.Tno=Salary.Tno;
(2)查询每个学生的学号、姓名、选修课程及成绩。
selectstudent.sno,sna
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- end 数据库 实验 答案