1、可年龄ClnoChar(5)学生所在班级 use GradeManager gocreate table Student(学号 char(7) primary key,姓名 nchar(4) not null,性别 nchar(1) not null,年龄 smallint ,班级 char(5) not null)GoCourse课程表CnoChar(1)课程号(唯一)Cname课程名称Credit学分create table Course(课程号 char(1) primary key,课程名称 varchar(20) not null,学分 smallintClass班级表班级号(唯一)
2、Speciality班级所在专业InyearChar(4)入校年份NumberInteger班级人数Monitor班长学号use GradeManager create table Class(班级号 char(5) primary key,专业 varchar(20) not null,入学年份 char(4) not null,班级人数 integer ,班长学号 char(7)Grade成绩表学号课程号GmarkDecimal(4,1)成绩create table Grade(学号 char(7) not null,课程号 char(1) not null,成绩 decimal(4,1)
3、图2-4 成绩管理数据库中的表结构李勇男2000311刘诗晨女19王一鸣00312张婷婷21李勇敏01311贾向东22陈宝玉张逸凡1数据库42离散数学3管理信息系统操作系统5数据结构6数据处理7C语言计算机软件200089计算机应用682001989288867855656654837080907656 图2-5 成绩管理数据库中的数据加入完整性约束说明,如图3-6所示,请用SQL语句完成图中约束的说明。完整性约束主码男或女,默认为男大于14,小于65外部码,级联alter table Studentadd constraint PK_Studentprimary key (学号)-添加主键约
4、束add constraint DF_sex default (男) for 性别-添加默认值,默认性别为男add constraint ck_xingbie check (性别= or 性别=女-添加check约束,指定性别输入为男或女alter table studentadd constraint ck_nianling check (年龄 between 14 and 65);-添加check约束,指定年龄输入范围是1465add constraint FK_class_student foreign key (班级)References Class (班级号)-添加外键约束on de
5、lete cascade-指定为级联删除 1、2、3、4、5、6之一alter table Courseadd constraint PK_Course primary key (课程号)-为课程号添加主键add constraint ck_Course check (学分=1or 学分=2 or 学分=3456-添加check约束,指定学分只能为1,2,3,4,5,6班级号大于1,小于100外部码alter table classadd constraint CK_banjirenshu check (班级人数1 and 班级人数=0 and 成绩=100)-添加check约束,指定成绩范围
6、为0100 图3-6 加了约束说明后的表结构2.针对以上四个表,用SQL语言完成以下各项操作:1给学生表增加一属性Nation(民族),数据类型为Varchar(20);use GradeManageradd 民族 varchar(20) null-使用add可以添加新列2 删除学生表中新增的属性Nation;drop column 民族 -使用drop删除列3 向成绩表中插入记录(”,”3”,80);go insert into Student values (2001110,李四2001311-添加该记录是为了能使下一条记录顺利添加,因为grade表的【学号】字段列上含外键约束,该外键参照 Student表的主键字段列【学号】,为了保证数据的完整性,Student表中因含有记录的一行数据。insert Grade80-使用insert into添加一条记录4 修改学号为”的学生的成绩为70分;use Grad
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1