实验要求
(1)建立学生数据库模式。
学生表:student (sno, sname, ssex, sage, sdept)
学生 学号 姓名 性别 年龄 所在系
sno 长度为4的字符串
sname 长度为8的字符串
ssex 长度为2的字符串
sage 短整数
sdept 长度为10的字符串
其中sno为主码。
CREATE TABLE student(
sno CHAR(18) PRIMARY KEY,
sname CHAR(18),
ssex CHAR(8),
sage SMALLINT,
sdept char (50)
);
课程表:course ( cno, cname)
课程 课程号 课程名 学分
cno 长度为4的字符串
cname 长度为10的字符串
credit 短整数
其中cno为主码。
CREATE TABLE course(
cno CHAR(18) PRIMARY KEY,
cname CHAR(18)
);
选课表: sc (sno, cno, cname, grade)
选课 学号 课程号 课程名 成绩
sno 长度为4的字符串
cno 长度为4的字符串
cname 长度为10的字符串
grade 短整数
其中(sno, cno) 为主码;sno为外码和student表对应;cno为外码和course表对应;grade的值或空或为0—100之间。
CREATE TABLE sc(
sno CHAR(18),
cno CHAR(18),
cname CHAR(20),
grade SMALLINT CHECK (grade>=0 AND grade <=100),
PRIMARY KEY(sno,cno),
foreign key (sno) references student(sno) ,
foreign key (cno) references course(cno)
);
(2)修改数据表结构
在课程表中增加一个credit字段,表示学分,类型为短整形。
从选课表中删除cname字段。
ALTER TABLE course add credit SMALLINT;
ALTER TABLE sc drop cname;
(3)撤销数据表。建立一个临时表,然后再把它撤销。
CREATE TABLE TEMP(
cno VARCHAR(4) PRIMARY KEY,
cname VARCHAR(10),
credit TINYINT
);
//先执行上一半再执行下一半
DROP TABLE temp;
为下一节实验二做准备
将sc表中cname加上
ALTER TABLE sc add cname CHAR(18);
4.实验器材
(1)安装关系数据库系统环境的微机。