Maison > base de données > tutoriel mysql > le corps du texte

Oracle学习笔记之视图

WBOY
Libérer: 2016-06-07 15:10:24
original
1024 Les gens l'ont consulté

1.什么是视图? 视图(VIEW)也被称为虚表,即虚拟的表,是一组数据的逻辑表达 视图对应于一条SELECT语句,结果集被赋予一个

1.什么是视图?

  视图(VIEW)也被称为虚表,,即虚拟的表,是一组数据的逻辑表达

  视图对应于一条SELECT语句,结果集被赋予一个名字, 即视图名字

  视图本身不包含任何数据,只是映射到基表的一个查询语句,当基表数据发生变化,视图数据也随之发送变化

  作用:重用代码,保护数据

2.创建视图 需要有权限 GRANT CREATE VIEW  TO user scott;

CREATE VIEW view_name 别名

不包含函数 叫简单视图

包含函数 表达式 复杂视图

基于多个表 连接视图

OR REPLACE 更新视图 如果存在则替换

语法

CREATE OR REPLACE VIEW 视图名称 SELECT语句

隐藏列名称 在SELECT语句中增加别名

CREATE OR REPLACE VIEW v_emp_10 AS SELECT empno id, ename name,sal salary,deptno deptno FROM emp WHERE deptno=10;

查看视图结构 DESC 视图名称

增加别名后 只能用别名进行查询视图 SELECT 姓名,工资,工作 FROM v_emp_10;

增加 WITH CHECK OPTION 防止在简单视图模式下 插入脏数据到基表内

CREATE OR REPLACE VIEW v_emp_10 AS SELECT empno id,

ename name,sal salary,deptno deptno FROM emp WHERE deptno=10 WITH CHECK OPTION;

复杂视图的创建

CREATE VIEW v_emp_salary

AS

SELECT d.dname,

AVG(e.sal) avg_sal,

SUM(e.sal) sum_sal,

MAX(e.sal)max_sal,

MIN(e.sal) min_sal

FROM emp e JOIN dept d ON e.deptno =d.deptno GROUP BY d.dname;

复杂视图的查询

SELECT * FROM v_emp_salary;

复杂视图不允许DML操作

本文永久更新链接地址

Étiquettes associées:
source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal