学生表: 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_INDEX4. 创建一视图 stu_info, 查询全体学生的姓名,性别,课程名,成绩。
1.用SQL语句创建学生表student,定义主键,姓名不能重名,性别只能输入男或女,所在系的默认值是 “计算机”。
mysql8.0。30 [chap07]>create table student(
-> Sno int primary key,
-> Sname char(30) unique,
-> Ssex char(10) check(Ssex in('M','F')),
-> Sage int,Sdept char(30) default '计算机系'
-> );
2.修改student 表中年龄(age)字段属性,数据类型由int 改变为smallint。
mysql8.0.30 [chap07]>alter table student modify Sage smallint;
Query OK, 0 rows affected (0.02 sec)
Records: 0 Duplicates: 0 Warnings: 0
3.为SC表建立按学号(sno)和课程号(cno)组合的升序的主键索引,索引名为SC_INDEX 。
mysql8.0.30 [chap07]>create table Course(
-> Cno int primary key,
-> Cname char(20)
-> );
Query OK, 0 rows affected (0.01 sec)
mysql8.0.30 [chap07]>create table SC(
-> Sno int,
-> Cno int primary key,
-> Score char(10)
-> );
Query OK, 0 rows affected (0.01 sec)
mysql8.0.30 [chap07]>create unique index SC_INDEX on SC(Sno asc,Cno asc);
Query OK, 0 rows affected (0.01 sec)
Records: 0 Duplicates: 0 Warnings: 0
4.创建一视图 stu_info,查询全体学生的姓名,性别,课程名,成绩。
mysql8.0.30 [chap07]>create view stu_info
-> as
-> select Sname,Ssex,Cname,Score from student,Course,SC
-> where student.Sno=SC.Sno and SC.Cno=Course.Cno;
Query OK, 0 rows affected (0.00 sec)