素材:
1.学生表:Student (Sno, Sname, Ssex , Sage, Sdept)
学号,姓名,性别,年龄,所在系 Sno为主键
2.课程表:Course (Cno, Cname)
课程号,课程名 Cno为主键
3.学生选课表:SC (Sno, Cno, Score)
学号,课程号,成绩 Sno,Cno为主键
题目:
1.用SQL语句创建学生表student,定义主键,姓名不能重名,性别只能输入男或女,所在系的默认值是 “计算机”。
2.修改student 表中年龄(age)字段属性,数据类型由int 改变为smallint。
3.为SC表建立按学号(sno)和课程号(cno)组合的升序的主键索引,索引名为SC_INDEX 。
4.创建一视图 stu_info,查询全体学生的姓名,性别,课程名,成绩。
解题:
1.用SQL语句创建学生表student,定义主键,姓名不能重名,性别只能输入男或女,所在系的默认值是 “计算机”。
mysql> CREATE TABLE student(
-> sno int primary key auto_increment,
-> Sname varchar(50) not null unique,
-> Ssex varchar(20) check(Ssex='男' or Ssex='女'),
-> Sage int,
-> Sdept varchar(50) default '计算机');
Query OK, 0 rows affected (0.07 sec)
2.修改student 表中年龄(age)字段属性,数据类型由int 改变为smallint。
mysql> alter table student modify sage smallint;
Query OK, 0 rows affected (0.12 sec)
Records: 0 Duplicates: 0 Warnings: 0
3.为SC表建立按学号(sno)和课程号(cno)组合的升序的主键索引,索引名为SC_INDEX 。
首先创建课程表和学生选课表
课程表:
mysql> create table course(
-> cno varchar(20) primary key,
-> cname varchar(20)
-> );
Query OK, 0 rows affected (0.03 sec)
学生选课表:
mysql> create table sc(
-> sno varchar(20),
-> cno varchar(20) primary key,
-> score varchar(30)
-> );
Query OK, 0 rows affected (0.03 sec)
然后创建索引并且查看索引:
mysql> create unique index SC_INDEX on sc(sno asc,cno asc);
4.创建一视图 stu_info,查询全体学生的姓名,性别,课程名,成绩。文章来源:https://www.toymoban.com/news/detail-807156.html
mysql> 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.01 sec)
文章来源地址https://www.toymoban.com/news/detail-807156.html
到了这里,关于五、MySQL---练习3(索引视图)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!