资源描述:
《数据库复习题附答案》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、一个“学生选课”数据库中包括三个表,具体内容如下:(1)“学生”表Student:字段名数据类型宽度可空性要求说明SnoCHAR7NOTNULL设为主键学号SnVARCHAR8NOTNULL姓名SsexCHAR2NOTNULL性别SaINTNOTNULL年龄SdVARCHAR50NULL所在系(2)“课程”表Course:字段名数据类型宽度可空性要求说明CnoCHAR7NOTNULL设为主键课程号CnVARCHAR8NOTNULL课程名称CcreditINTNOTNULL学分(3)“学生选课”表SC:字段名数据类型宽度可空性要求说明SnoCHAR7NO
2、TNULL设为主键学号CnoCHAR7NOTNULL设为主键课程号GradeINTNOTNULL成绩一、请使用Transact-SQL完成下列基本应用操作。1.创建“Student”表:createtableStudent(Snochar(7)notnullprimarykey,Snvarchar(8)notnull,Ssexchar(2)notnull,Saintnotnull,Sdvarchar(50))1.将一条新的学生记录(学号:2009101;姓名:李东;性别:男;年龄:18岁;所在系:IS)插入Student表中。insertintoStu
3、dent(Sno,Sn,Ssex,Sa,Sd)values('2009101','李东','男',18,'IS')2.为Student表中增加一个新字段“籍贯”:Si,char(20),默认值为“河北”。altertableStudentaddSichar(20)default('河北')3.查询全体学生的学号与姓名。selectSno,SnfromStudent4.查询全体学生的全部信息。SELECT*FROMStudent5.查询年龄在18-22之间的学生学号。SELECTSnoFROMStudentWHERESa>18andSa<226.查询学号
4、为2009600的学生的姓名和籍贯。selectSa,SifromStudentwhereSno='2009600'7.查询全体学生信息,并按“年龄”降序排列。SELECT*FROMStudentorderbySadesc8.查询学生总人数。selectcount(*)fromStudent9.查询所有学生的籍贯地,要求不能有重复值。selectdistinctSifromstudent10.查询所有学生的出生年份。没有出生日期这个字段1.将学号为2009002的学生姓名改为“李丽”。updateStudentsetSn='李丽'whereSno='2
5、009002'2.将学号为2009002的学生删除。deletefromStudentwhereSno='2009002'3.请为Student表的Sno列建立一个聚集索引,该索引按降序排列。createclusteredindexsno_indonStudent(Snodesc)4.删除Student表中已经建立的一个索引“index_stu”。dropindexindex_stuonStudent5.查询所有计算机系的学生信息,并把结果永久保存到“Stu_CS”表中。select*fromStudentwhereSd='is'intoStu_CS/
6、/有错误6.创建“Course”表:CREATETABLECourse(Cnochar(7)notnullprimarykey,Cnvarchar(8)notnull,Ccreditintnotnull)7.插入一条课程记录(课程号:6;课程名称:数据库应用;学分:3)。insertintoCourse(Cno,Cn,Ccredit)values('6','数据库应用',3)/不知道为什么报错了8.查询全体学生的姓名与年龄。selectSn,,SafromStudent9.查询年龄小于23岁的男生的学号和姓名。selectSno,SnfromStude
7、ntwhereSa<23andSsex='男'1.查询所有籍贯为“河北”的男生的学号和姓名。selectSno,SnfromStudentwhereSi='河北'andSsex='男'2.查询数学系ma或物理系ph的学生。select*fromStudentwhereSdin('ma','ph')3.查询全部的课程信息,并按“学分”降序排列。select*fromCourseorderbyCcreditdesc4.查询学生的最小年龄。SELECTMIN(Sa)FROMStudent5.查询所有被学生选修了的课程号,要求不能有重复值。selectdist
8、inctCnofromSC6.将学号为2009002的学生年龄改为“22”岁。updateSt