a032网站模版,wordpress多说插件下载,室内设计公司招聘,上海公共服务平台目录 一、前言二、视图2.1概念2.2语法2.3创建视图2.3.1目的 2.4查看视图2.5修改数据2.5.1通过真实表修改数据#xff0c;会影响视图2.5.2通过修改视图#xff0c;会影响基表 2.6注意2.7 删除视图2.8 视图的优点 一、前言 欢迎大家来到权权的博客~欢迎大家对我的博客进行指导会影响视图2.5.2通过修改视图会影响基表 2.6注意2.7 删除视图2.8 视图的优点 一、前言 欢迎大家来到权权的博客~欢迎大家对我的博客进行指导有什么不对的地方我会及时改进哦~ 博客主页链接点这里–权权的博客主页链接
二、视图
2.1概念 视图是⼀个虚拟的表它是基于⼀个或多个基本表或其他视图的查询结果集。视图本⾝不存储数据而是通过执⾏查询来动态生成数据。用户可以像操作普通表⼀样使⽤视图进行查询、更新和管理。视图本⾝并不占用物理存储空间它仅仅是⼀个查询的逻辑表示物理上它依赖于基础表中的数据。使用视图查询数据时数据库系统会从原来的表中取出对应的数据。因此视图中的数据是依赖于原来的表中的数据的。一旦表中的数据发生改变显示在视图中的数据也会发生改变。同样对视图的更新会影响到原来表的数据。 2.2语法
CREATE VIEW view_name [(column_list)] AS select_statement;2.3创建视图
2.3.1目的 创建视图的目的有时候我们不想让别人知道一些信息只想让别人知道想让别人的信息的时候我们就可以创建视图。 创建一个名字为v_进货表_供货表的视图只让读者查询这个v_进货表_供货表时只看到进货日期、进价、供货商名称、联系人. SELECT jhb.进货日期,jhb.进价,ghs.供货商名称,ghs.联系人,COUNT(ghs.供货商名称)
FROM 进货表 jhb,供货商表 ghs
WHERE jhb.供货商IDghs.供货商ID
GROUP BY jhb.进货日期,jhb.进价,ghs.供货商名称,ghs.联系人;把这个查询用一个视图封装起来没有指定列名 CREATE VIEW v_进货表_供货商表 AS
(
SELECT jhb.进货日期,jhb.进价,ghs.供货商名称,ghs.联系人,COUNT(ghs.供货商名称)
FROM 进货表 jhb,供货商表 ghs
WHERE jhb.供货商IDghs.供货商ID
GROUP BY jhb.进货日期,jhb.进价,ghs.供货商名称,ghs.联系人
);把这个查询用一个视图封装起来指定列名 CREATE VIEW v_进货表_供货商表1
(
进货日期,进价,供货商名称,联系人
)AS
(
SELECT jhb.进货日期,jhb.进价,ghs.供货商名称,ghs.联系人
FROM 进货表 jhb,供货商表 ghs
WHERE jhb.供货商IDghs.供货商ID
);2.4查看视图
语法
select * from 视图名;查看视图 select * from v_进货表_供货商表;2.5修改数据 使用视图查询数据时数据库系统会从原来的表中取出对应的数据。因此视图中的数据是依赖于原来的表中的数据的。一旦表中的数据发生改变显示在视图中的数据也会发生改变。同样对视图的更新会影响到原来表的数据。 2.5.1通过真实表修改数据会影响视图 2.5.2通过修改视图会影响基表 2.6注意
修改真实表会影响视图修改视图同样也会影响真实表 • 以下视图不可更新 ◦ 创建视图时使用聚合函数的视图 ◦ 创建视图时使用 DISTINCT ◦ 创建视图时使用 GROUP BY 以及 HAVING 子句 ◦ 创建视图时使⽤ UNION 或 UNION ALL ◦ 查询列表中使用子查询 ◦ 在FROM子句中引用不可更新视图
2.7 删除视图
语法
drop view view_name;删除 v_进货表_供货商表 的视图 2.8 视图的优点 简单性视图可以将复杂的查询封装成⼀个简单的查询。例如针对⼀个复杂的多表连接查询可 以创建⼀个视图⽤⼾只需查询视图⽽⽆需了解底层的复杂逻辑。安全性通过视图可以隐藏表中的敏感数据。例如⼀个系统的用户表中可以创建⼀个不包含密码列视图普通用户只能访问这个视图而不能访问原始表。逻辑数据独立性视图提供了⼀种逻辑数据独⽴性即使底层表结构发⽣变化只需修改视图定 义而无需修改依赖视图的应⽤程序。使用到应用程序与数据库的解耦重命名列视图允许用户重命名列名以增强数据可读性。 欧耶我学会啦