TABLECourseADDCONSTRAINTCreditCHECKCredit0
(4)删除Stude
t表中的Sid和Sdate列。注意:这里首先需要先删除约束
ALTERTABLEStude
tDROPCONSTRAINTUQ__Stude
t__CA1E5D79B3204FCFALTERTABLEStude
tDROPCONSTRAINTDF__Stude
t__Sdate__3B75D760ALTERTABLEStude
tDROPCOLUMNSdateSid
(5)为Teacher表添加主键约束,其主键为:T
o。
ALTERTABLETeacherADDPRIMARYKEYT
o
※建立数据库主要文件和日志文件
※我们可以看到D盘增加了主要数据文件mdf和日志文件ldf
365
f※给stude
ts_data建立表格createtableStude
tS
ochar7S
amechar10
ot
ullSsexchar2checkSsex男orSsex女Sageti
yi
tcheckSage14ANDSage46Sdeptvarchar20default计算机系Sidchar10u
ique身份证号SdatedatedefaultgetdateprimarykeyS
ocreatetableCourseC
ochar10primarykeyC
amevarchar20
ot
ullCrediti
tcheckCredit0Semesterti
yi
tcreatetableSCS
ochar7C
ochar10Gradeti
yi
tcheckGrade0ANDGrade100foreig
keyS
orefere
cesStude
tS
oforeig
keyC
orefere
cesCourseC
o
createtableTeacherT
ochar8
ot
ullT
amechar10
ot
ullSalarydecimal62
C2第5章上机实验
本实验均在SQLServer的SSMS工具中实现。首先在已创建的“学生数据库”中创建本章表5153所示的Stude
t、Course和SC表,并插入表5456所示数据,然后编写实现如下操作的SQL语句,执行所写的语句,并查看执行结果。有关建表及所需要的数据,见本章末尾1查询SC表中的全部数据。
SELECTFROMSC
366
f2查询计算机系学生的姓名和年龄。
SELECTS
ameSageFROMStude
tWHERESdept计算机系
3查询成绩在70~80分的学生的学号、课程号和成绩。
SELECTS
oC
oGradeFROMSCWHEREGradebetwee
70AND80
4查询计算机系年龄在18~20岁的男生姓名和年龄。
SELECTS
ameSageFROMStude
tWHERESdept计算机系ANDSageBETWEEN18AND20ANDSsex男
5查询C001课程的最高分。
SELECTMAXgradeAS最高成绩FROMSCWHEREC
oC001
6查询计算机系学生的最大年龄和最小年龄。
SELECTMAXSageAS年长MINSageAS年幼FROMStude
tWHERESdept计算机系
7统计每个系的学生人数。
SELECTSdeptCOUNTS
oAS人数FROMStude
tGROUPBYSdept
8统计每门课程的选课人数和最高成绩。
SELECTC
oCOUNTS
oAS人数MAXGradeAS最高成绩FROMSCGROUPBYC
o
9统计每个学生的选课门数和考试总成绩,并按选课门数升序显示结果。
SELECTS
oCOUNTC
oAS选课数量SUMGradeAS考试总成绩FROMSCGROUPBYS
o
10列出总成绩超过200的学生的学号和总成绩。
SELECTS
oSUMGradeAS考试总成绩FROMSCGROUPBYS
oHAVINGSUMGrade200
11查询选了C002课程的学生姓名和所在系。
SELECTS
ameSdeptFROr