题目:
- 学生表:学号,姓名,性别,年龄,所在系;Student (Sno, Sname, Ssex , Sage, Sdept);Sno为主键
- 课程表:课程号,课程名;Course (Cno, Cname);Cno为主键
- 学生选课表:学号,课程号,成绩;SC (Sno, Cno, Score);Sno,Cno为主键
1.用SQL语句创建以上各表,其中学生表姓名不能重名,性别只能输入男或女,所在系的默认值是 “计算机”。
1)学生表Student:
create table Student (
Sno int primary key,
Sname char(20) not null,
Ssex enum('男','女'),
Sage int,
Sdept char(20) default '计算机' );
2)课程表Course:
create table Course (
Cno int primary key,
Cname char(20));
3)学生选课表SC:
create table SC(
Sno int, Cno int,
Score int,
primary key (Sno,Cno));
2.修改student 表中年龄(Sage)字段属性,数据类型由int 改变为smallint。
alter table Student modify Sage smallint;
3.为SC表建立按学号(sno)和课程号(cno)组合的升序的主键索引,索引名为SC_INDEX 。
create unique index SC_INDEX on SC(Sno asc,Cno asc);
4.创建一视图 stu_info,查询全体学生的姓名,性别,课程名,成绩。
create view stu_info as
select st.Sname,st.Ssex,c.Cname,SC.Score
from Student st,Course c,SC
where st.Sno=SC.Sno and c.Cno=SC.Cno;