成绩管理数据库Word文档格式.docx
《成绩管理数据库Word文档格式.docx》由会员分享,可在线阅读,更多相关《成绩管理数据库Word文档格式.docx(19页珍藏版)》请在冰豆网上搜索。
![成绩管理数据库Word文档格式.docx](https://file1.bdocx.com/fileroot1/2022-10/24/5c6b7490-8b55-4caa-9bbe-77cc6a5c283a/5c6b7490-8b55-4caa-9bbe-77cc6a5c283a1.gif)
可
年龄
Clno
Char(5)
学生所在班级
useGradeManager
go
createtableStudent
(学号char(7)primarykey,
姓名nchar(4)notnull,
性别nchar
(1)notnull,
年龄smallint,
班级char(5)notnull
)
Go
Course课程表
Cno
Char
(1)
课程号(唯一)
Cname
课程名称
Credit
学分
createtableCourse
(课程号char
(1)primarykey,
课程名称varchar(20)notnull,
学分smallint
Class班级表
班级号(唯一)
Speciality
班级所在专业
Inyear
Char(4)
入校年份
Number
Integer
班级人数
Monitor
班长学号
useGradeManager
createtableClass
(班级号char(5)primarykey,
专业varchar(20)notnull,
入学年份char(4)notnull,
班级人数integer,
班长学号char(7)
Grade成绩表
学号
课程号
Gmark
Decimal(4,1)
成绩
createtableGrade
(学号char(7)notnull,
课程号char
(1)notnull,
成绩decimal(4,1)
图2-4成绩管理数据库中的表结构
李勇
男
20
00311
刘诗晨
女
19
王一鸣
00312
张婷婷
21
李勇敏
01311
贾向东
22
陈宝玉
张逸凡
1
数据库
4
2
离散数学
3
管理信息系统
操作系统
5
数据结构
6
数据处理
7
C语言
计算机软件
2000
89
计算机应用
68
2001
98
92
88
86
78
55
65
66
54
83
70
80
90
76
56
图2-5成绩管理数据库中的数据
加入完整性约束说明,如图3-6所示,请用SQL语句完成图中约束的说明。
完整性约束
主码
男或女,默认为男
大于14,小于65
外部码,级联
altertableStudent
addconstraintPK_Student
primarykey(学号)
--添加主键约束
addconstraintDF_sexdefault('
男'
)for性别
--添加默认值,默认性别为男
addconstraintck_xingbiecheck(性别='
or性别='
女'
--添加check约束,指定性别输入为男或女
altertablestudent
addconstraintck_nianlingcheck(年龄between14and65);
--添加check约束,指定年龄输入范围是14~65
addconstraintFK_class_student
foreignkey(班级)
ReferencesClass(班级号)
--添加外键约束
ondeletecascade
--指定为级联删除
1、2、3、4、5、6之一
altertableCourse
addconstraintPK_Courseprimarykey(课程号)
--为课程号添加主键
addconstraintck_Coursecheck(学分='
1'
or学分='
2'
or学分='
3'
4'
5'
6'
--添加check约束,指定学分只能为1,2,3,4,5,6
班级号
大于1,小于100
外部码
altertableclass
addconstraintCK_banjirenshucheck(班级人数>
1and班级人数<
100)
--添加check约束,指定班级人数为1~100
altertableClass
addconstraintFK_Student_Class
foreignkey(班长学号)
ReferencesStudent(学号)
--添加外键,在class表的【班长学号】字段列上添加一个名为FK_Student_Class的外键约束,该外键参照Student表的主键字段列【学号】
主属性,外部码,级联
大于0,小于100`
altertablegrade
addconstraintFK_Student_Grade
foreignkey(学号)
ReferencesStudent(学号)
--添加外键,在grade表的【学号】字段列上添加一个名为FK_Student_grade的外键约束,该外键参照Student表的主键字段列【学号】
addconstraintFK_Course_Grade
foreignkey(课程号)
ReferencesCourse(课程号)
--添加外键,在grade表的【课程号】字段列上添加一个名为FK_Course_grade的外键约束,该外键参照Course表的主键字段列【课程号】
altertableGrade
addconstraintCK_chengjicheck(成绩>
=0and成绩<
=100)
--添加check约束,指定成绩范围为0~100
图3-6加了约束说明后的表结构
2.针对以上四个表,用SQL语言完成以下各项操作:
1给学生表增加一属性Nation(民族),数据类型为Varchar(20);
useGradeManager
add民族varchar(20)null
--使用add可以添加新列
2删除学生表中新增的属性Nation;
dropcolumn民族
--使用drop删除列
3向成绩表中插入记录(””,”3”,80);
go
insertintoStudent
values('
2001110'
'
李四'
20'
01311'
--添加该记录是为了能使下一条记录顺利添加,因为grade表的【学号】字段列上含外键约束,该外键参照Student表的主键字段列【学号】,为了保证数据的完整性,Student表中因含有'
记录的一行数据。
insertGrade
80'
--使用insert[into]添加一条记录
4修改学号为””的学生的成绩为70分;
useGrad