MySQL索引和视图

文字描述:索引的创建和删除;

1)     ALTER TABLE 删除studb中的student表、grade表、course表的主键索引;

2)     为course的课程编号创建索引名为cno_idx

3)     为grade 分数 创建普通索引名为grade_idx

4)     为grade的 学号 和 课程编号 创建一个符合索引名为grade_sid_cid_idx

5)     查看grade上的索引信息

6)     删除grade_idx,查看grade上的索引信息

USE studb;

DESC student;

ALTER TABLE student DROP PRIMARY KEY;

DESC student;

ALTER TABLE grade DROP PRIMARY KEY;

ALTER TABLE course DROP PRIMARY KEY;

CREATE UNIQUE INDEX cno_idx ON course(课程编号);

CREATE INDEX grade_idx ON grade(分数);

CREATE INDEX grade_sid_cid_idx ON grade(学号,课程编号)

SHOW INDEX FROM grade;

DROP INDEX grade_idx ON grade;

SHOW INDEX FROM grade;

文字描述:视图的创建、修改和删除;

1)     CTEATE VIEW创建视图名为v_stu_c,显示学号、姓名、课程编号,查看0002学生的情况

2)     创建v_stu_g视图,包含学号、姓名、课程名称、分数,使用视图查询0001的课程平均分

3)     修改v_stu_g,显示学号、姓名、性别

4)     利用v_stu_g为student添加一行数据:0010 陈婷 女

5)     利用v_stu_g删除学号为0010的学生记录

6)     利用v_stu_g修改张三的高等数学为87分

7)     删除v_stu_c和v_stu_g

CREATE VIEW v_stu_g AS SELECT s.学号,姓名,课程名称,分数 FROM student s,course c,grade g

WHERE s.学号=g.学号 and g.课程编号=c.课程编号;

CREATE VIEW v_stu_c AS SELECT s.学号,姓名,课程编号 FROM student s, grade g WHERE s.学号=g.学号;

SELECT * FROM v_stu_c WHERE 学号=’0002’;

ALTER VIEW v_stu_g AS SELECT s.学号,姓名,课程编号,分数 FROM student s,grade g,course c WHERE s.学号=g.学号 and g.课程编号=c.课程编号;

INSERT INTO v_stu_g(学号,姓名,性别) VALUES('0010','陈婷',’女’);

DELETE FROM v_stu_g WHERE 学号=’0010’;

UPDATE grade SET 分数=87 WHERE 学号=(SELECT 学号 FROM v_stu_g WHERE 姓名=’张三’) and 课程编号=(SELECT 课程编号 FROM course WHERE 课程名称=’高等数学’);

DROP VIEW v_stu_c,v_stu_g;

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值