学生表:Student (Sno, Sname, Ssex , Sage, Sdept)
学号,姓名,性别,年龄,所在系 Sno为主键
课程表:Course (Cno, Cname,)
课程号,课程名 Cno为主键
学生选课表:SC (Sno, Cno, Score)
学号,课程号,成绩 Sno,Cno为主键
1.用SQL语句创建学生表student,定义主键,姓名不能重名,性别只能输入男或女,所在系的默认值是 “计算机”。
2.修改student 表中年龄(age)字段属性,数据类型由int 改变为smallint。
3.为SC表建立按学号(sno)和课程号(cno)组合的升序的主键索引,索引名为SC_INDEX 。
4.创建一视图 stu_info,查询全体学生的姓名,性别,课程名,成绩。
CREATE TABLE Student(
Sno INT,
Sname VARCHAR(50) ,
Ssex VARCHAR(50) CHECK(Ssex='男' or Ssex = '女'),
Sage INT,
Sdept VARCHAR(50) NOT NULL DEFAULT '计算机',
PRIMARY KEY(Sno)
);
CREATE TABLE Course(
Cno INT,
Cname VARCHAR(50),
PRIMARY KEY(Cno)
);
CREATE TABLE SC(
Sno INT,
Cno INT,
Score FLOAT(3,2),
PRIMARY KEY(Sno,Cno)
);
ALTER TABLE student MODIFY Sage SMALLINT;
ALTER TABLE student ADD UNIQUE KEY(Sname);
CREATE INDEX SC_INDEX ON sc(Sno,Cno);
CREATE VIEW stu_info AS SELECT student.Sname AS '姓名',student.Ssex AS '性别',SC.Cno AS '课程名',SC.Score AS '成绩' FROM student,course,sc where student.Sno=sc.Sno and sc.Cno=course.Cno;