zoukankan      html  css  js  c++  java
  • oracle学习之——视图

    一、介绍
    视图是一张虚拟表,其内容由查询定义,同真实的表一样,视图包含一系列带有名称的列和行数据。但是,视图并不在数据库中以存储的数据值集形式存在。行和列数据来自由定义视图的查询所引用的表,并且在引用视图时动态生成。(视图不是真实存在磁盘上的)

    二、视图与表的区别
    1、表需要占用磁盘空间,视图不需要
    2、视图不能添加索引(所以查询速度略微慢点)
    3、使用视图可以简化,复杂查询
    4、视图的使用利于提高安全性
    比如:不同用户查看不同视图

    三、创建/修改视图
    1、创建视图
    create view 视图名 as select 语句 [with read only]
    2、创建或修改视图
    create or replace view 视图名 as select 语句 [with read only]
    3、删除视图
    drop view 视图名

    四、代码示例

    1、创建视图

    create Or Replace view t as

    select T1.t11 f1 ,T1.t12 f2 ,T2.t22 f3
    from T1,T2
    Where T1.t11=T2.t11;

    2、视图更新

    Create Or Replace Trigger Trg_InsUpdDel_t

    Instead Of Insert or update or delete
    on t
    for each row
    Declare
    begin
    If Inserting Then
    Insert Into t1 (t11,t12) Values (:New.f1,:New.f2);
    Insert Into t2 (t11,t22) Values (:New.f1,:New.f3);
    elsif Updating Then
    Update t1 set t11=:New.f1,t12=:New.f2 where t11=:New.f1;
    Update t2 set t11=:New.f1,t22=:New.f3 where t11=:New.f1;
    elsif Deleting then
    Delete from t1 where t11=:Old.f1;
    Delete from t2 where t11=:Old.f1;
    End if;
    end;
  • 相关阅读:
    Hive学习小记-(4)带复杂集合类型及指定多分隔符hive建表
    nowcoder-shell篇(grep、awk、sed为主)
    剑指offer02-替换空格
    剑指offer67-剪绳子**
    爬虫5-Scrapy爬虫架构
    爬虫4-网站结构分析
    爬虫3-python爬取非结构化数据下载到本地
    项目创建
    项目框架搭建
    项目表结构
  • 原文地址:https://www.cnblogs.com/caishuhua226/p/2423857.html
Copyright © 2011-2022 走看看