MySQL4.索引及视图

1.建库

sql 复制代码
create database mydb15_indexstu;
use mydb15_indexstu;

2.建表

2.1 student表学(sno)号为主键,姓名(sname)不能重名,性别(ssex)仅能输入男或女,默认所在系别(sdept)为'计算机'

sql 复制代码
create table student( 
sno int primary key auto_increment,
sname varchar(30) not null unique, 
ssex varchar(2) check(ssex='男' or ssex='女') not null, 
sage int not null, 
sdept varchar(10) default'计算机' not null);

2.2 course表课程号(cno)为主键

sql 复制代码
create table course( 
cno int primary key not null, 
cname varchar(20) not null);

2.3 sc表课程号(cno)为主键

sql 复制代码
create table sc( 
sno int not null,
cno varchar(10) primary key not null, 
score int not null);

3.实现需求

3.1 修改student表中年龄(sage)字段属性,将数据类型由int改为smallint

sql 复制代码
alter table student modify sage smallint;

3.2 为course表中 课程号(cno)字段设置索引,并查看索引

sql 复制代码
create index cno_index on course(cno);
show create table course\G

3.3 为sc表建立按学号(sno)和课程号(cno)组合的升序的主键索引,索引名sc_index

sql 复制代码
create index sc_index on sc(sno,cno asc);
show create table sc\G

3.4 创建一个视图stu_info,查询全体学生的姓名,性别,课程名,成绩

sql 复制代码
create view stu_info as select sname,ssex,cname,score from student join sc on student.sno=sc.sno join course on sc.cno=course.cno;
show tables;

3.5 删除所有索引

sql 复制代码
drop index cno_index on course;
drop index sc_index on sc;
相关推荐
阿桨15 分钟前
【保姆级教程-Centos7环境下部署mongodb并设置开机自启】
数据库·mongodb·centos
lolo大魔王31 分钟前
MongoDB的增删改查操作
数据库·mongodb
layman05282 小时前
node.js 实战——mongoDB
数据库·mongodb·node.js
爱可生开源社区2 小时前
SQLShift 全新上线:Oracle→OceanBase 迁移利器
数据库
wkj0013 小时前
java 和 C#操作数据库对比
java·数据库·c#
编程在手天下我有3 小时前
Redis 数据类型全览:特性、场景与操作实例
数据库·redis·数据结构与算法
左灯右行的爱情3 小时前
缓存并发更新的挑战
jvm·数据库·redis·后端·缓存
Qiuner4 小时前
软件设计师速通其一:计算机内部数据表示
服务器·数据库·信号处理
文牧之5 小时前
PostgreSQL oracle_fdw 扩展解析
运维·数据库·postgresql
一个天蝎座 白勺 程序猿6 小时前
Python爬虫(9)Python数据存储实战:基于pymysql的MySQL数据库操作详解
数据库·python·mysql