我的编程空间,编程开发者的网络收藏夹
学习永远不晚

【学习】SQL基础-015-视图

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

【学习】SQL基础-015-视图

1、本质:逻辑数据集,没有真正数据

2、类型
    简单视图:不使用函数,不使用聚合;一般可以接受DML
    复杂视图:使用函数和聚合;不能接受DML

3、原理
    oracle 访问 user_views 数据字典,找到视图的子查询并执行,返回数据;
    访问视图,实际是访问基表;
    视图是存放在数据字典中的一条子查询。

4、创建
    前提:create view 权限
    语法:
          【学习】SQL基础-015-视图
    参数:
         force:     即使子查询中明细表不存在,也创建视图。
          noforce: 默认值,如果明细表不存在,则引发错误。

         with check option 加约束进行检查,对视图进行 dml 操作时,检查创建时的 where 条件。 确保DML在特定范围内操作
          with read only      只能进行查询,不能通过视图修改基表。  禁止DML操作

5、应用例
    查询表空间的使用情况
    create view tablesp_usage as
             select a.tablespace_name as tablespace_name,
                     to_char(a.total/1024/1024,99999999) as total_mb,
                     to_char((a.total-b.free)/1024/1024,99999999) use_mb,
                     to_char(b.free/1024/1024,99999999) as free_mb,
                     to_char(((total-free)/total)*100,999.99) as "Used %"
             from
                   (select tablespace_name,sum(bytes) as total from dba_data_files
                    group by tablespace_name) a,
                   (select tablespace_name,sum(bytes) as free from dba_free_space
                    group by tablespace_name) b
            where a.tablespace_name=b.tablespace_name order by 5 desc;

6、删除
     drop view 不会删除基表数据

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

【学习】SQL基础-015-视图

下载Word文档到电脑,方便收藏和打印~

下载Word文档

猜你喜欢

MySQL基础-视图

视图定义:本质就是一张虚拟表。从一个或多个表中结合查询出来的结果集,作用和真实表一样。可以使用SELECT 语句查询数据,也可以使用INSERT,UPDATE,DELETE 来修改数据。优点:1) 简单化,数据所见即所得;2) 安全性,用户只能查询或修改他们所
2021-02-05

Python基础学习

第一个 Python 程序:Hello Worldprint("Hello World!")Python 控制流:if-else, if-elif-else:    if-else 语法:if 判断条件:    执行语句……else:   
2023-01-31

python 基础学习

#此代码关于python函数调用的理解学习#还不明白这段代码如何实现调用的!!!def apply_twice(func, arg):return func(func(arg))def add_five(x):return x + 5pri
2023-01-31

HoneyDrive_3基础学习

20161219 08:51——09:30 这篇博文记录HoneyDrive_3_Royal_Jelly(1)系统应用整体的简介和(2)初期准备或相关具体功能的介绍说明,和(3)HoneyDrive_3的基本使用或基础理论。参考:Honey
2023-01-31
2023-09-12

dba_tables视图学习

DBA_TABLES描述数据库中的所有关系表。它的列与ALL_TABLES中的列相同。要收集此视图的统计信息,请使用DBMS_STATS包。
2022-11-30

python基础学习3_if_for

if用于条件判断,如果满足条件就执行否则就继续直到结束,熟悉shell条件判断就觉得so easy格式:if condition1:  execute commandelif condition2:  execute commandelse
2023-01-31

Python学习 :socket基础

socket基础  什么是socket?  - socket为接口通道,内部封装了IP地址、端口、协议等信息;我们可以看作是以前的通过电话机拨号上网的年代,socket即为电话线  socket通信流程  我们通过下面的图来了解socket
2023-01-31

python基础学习1

一.python第一个程序print("hello world")二.变量的命名规则  1. 字母数字下划线组成  2. 不能以数字开头,不能含有特殊字符和空格  3. 不能以保留字命名  4. 不能以中文命名  5. 定义的变量名应该有意
2023-01-30

python基础学习2

一.算数运算符+加法,-减法,*乘法,/除法,//地板除,%求余,**幂运算。二.逻辑运算符非not、且and、或or。优先级依次为not,and,or。三.print()end结尾print()#默认为print(end="\n"),想要
2023-01-30

MySQL基础(4) | 视图

MySQL基础(4) | 视图基本语法1.创建CREATE VIEW AS 语法说明如下。:指定视图的名称。该名称在数据库中必须是唯一的,不能与其他表或视图同名。:指定创建视图的 SELECT 语句,可用于查询多个基础表或源视图。对于创建视图中的 SELEC
MySQL基础(4) | 视图
2019-06-10

Tornado基础学习篇

1.1 Tornado是什么?Tornado是使用Python编写的一个强大的、可扩展的Web服务器。它在处理严峻的网络流量时表现得足够强健,但却在创建和编写时有着足够的轻量级,并能够被用在大量的应用和工具中。我们现在所知道的Tornado
2023-01-30

编程热搜

目录