文档详情

成绩管理数据库.doc

发布:2017-06-15约字共12页下载文档
文本预览下载声明
设有一数据库GradeManager(成绩管理),包括四个表:学生表(Student)、课程表(Course)、班级表(Class)以及成绩表(Grade)。四个表的结构如图2-4所示,数据如图2-5所示。用SQL语句创建四个表。 Student学生表 属性名 数据类型 可否为空 含义 Sno Char(7) 否 学号(唯一) Sname VarChar(20) 否 学生姓名 Ssex Char(2) 否 性别 Sage Smallint 可 年龄 Clno Char(5) 否 学生所在班级 use GradeManager go create table Student (学号 char(7) primary key, 姓名 nchar(4) not null, 性别 nchar(1) not null, 年龄 smallint , 班级 char(5) not null ) Go Course课程表 属性名 数据类型 可否为空 含义 Cno Char(1) 否 课程号(唯一) Cname VarChar(20) 否 课程名称 Credit Smallint 可 学分 use GradeManager go create table Course (课程号 char(1) primary key, 课程名称 varchar(20) not null, 学分 smallint ) gouse GradeManager go create table Class (班级号 char(5) primary key, 专业 varchar(20) not null, 入学年份 char(4) not null, 班级人数 integer , 班长学号 char(7) ) Go Grade成绩表 属性名 数据类型 可否为空 含义 Sno Char(7) 否 学号 Cno Char(1) 否 课程号 Gmark Decimal(4,1) 可 成绩 use GradeManager go create table Grade (学号 char(7) not null, 课程号 char(1) not null, 成绩 decimal(4,1) ) gouse GradeManager go alter table Student add constraint PK_Student primary key (学号) go --添加主键约束 alter table Student add constraint DF_sex default (男) for 性别 go --添加默认值,默认性别为男 alter table Student add constraint ck_xingbie check (性别=男 or 性别=女) go --添加check约束,指定性别输入为男或女 alter table student add constraint ck_nianling check (年龄 between 14 and 65); go --添加check约束,指定年龄输入范围是14~65 alter table Student add constraint FK_class_student foreign key (班级) References Class (班级号) --添加外键约束 on delete cascade --指定为级联删除 go Course课程表 属性名 数据类型 可否为空 含义 完整性约束 Cno Char(1) 否 课程号 主码 Cname VarChar(20) 否 课程名称 Credit Smallint 可 学分 1、2、3、4、5、6之一 use GradeManager go alter table Course add constraint PK_Course primary key (课程号) go --为课程号添加主键 alter table Course add constraint ck_Course check (学分=1or 学分=2 or 学分=3 or 学分=4 or 学分=5 or 学分=6) go --添加check约束,指定学分只能为1,2,3,4,5,6 Class班级表 属性名 数据类型 可否为空 含义 完整性约束 Clno Char(5) 否 班级号 主码 Speciality VarChar(20) 否 班级所在专业 Inyear Char(4) 否 入校年份 Number Integer 可 班级人数 大于1,小于100 Monitor Char(7) 可 班长学号
显示全部
相似文档