以下为个人作为初学者的自己看书总结,访客看到有不足或差错之处,欢迎交流指正。
day8 2020/10/22
目录
11.1 视图相关概念
将 SELECT 的结果像表一样保留下来的虚表 就是视图。
视图其实就是一种信息,用户按照想要的条件收集某表某列的数据,它不是实体。
11.2 使用视图
11.2.1 创建视图
CREATE VIEW 视图名 AS SELECT 列名 FROM 表名 WHERE 条件;
ORDER BY
LIMIT
JOIN
11.2.2 通过视图更新列的值
如:UPDATE v1 SET name='新的名字' WHERE name='旧的名字';
11.3 创建视图
11.3.1 设置条件创建视图
如:CREATE VIEW v2
AS
SELECT tb.empid,tb1.name,tb.sales
FROM tb
JOIN tb1
USING(empid)
WHERE tb.sales>=100;
11.3.2 确定视图
SHOW TABLES;
DESC 视图名;
SELECT * FROM 视图;
SHOW CREATE VIEW 视图名;
11.4 限制通过视图写入
在使用CREATE VIEW 创建视图时,加上WITH CHECK OPTION 可以达到"不接受与条件不匹配的记录"。
11.5 替换、修改、删除视图
1. 替换 OR REPLACE
CREATE OR REPLACE VIEW 视图名 SELECT ...;
2. 修改
ALTER VIEW 视图名 AS SELECT 列名 FROM 表名;
3. 删除
DROP VIEW 视图名;
小结
对视图进行 UPDATE、INSERT 会相应的改变基表的信息。
插入了不符合视图条件的记录也会改变基表,只不过在视图中不显示出来
基表更新 视图也会相应的更新,按照设置的条件进行显示
拓展:复制
原始的数据库称为主库(master), 通过复制创建的副本称为从库(slave).
以一主多从的"主从"为例
什么时间点将主库的数据复制到从库是一个问题。复制分同步模式和异步模式
MySQL 采用异步模式,二进制日志会单方面从主库发送到从库。故 MySQL 中"主库和从库的内容有时可能不同"
MySQL5.5以上 半同步复制
MySQL5.7增加了 无损半同步复制
接下来一系列会每天记录《MySQL基础教程》的学习总结。挑战半个月看书,动手,写博客