SQL Sever MYSQL 视图实现的 2 种方式

SQL Sever MYSQL 视图实现的 2 种方式

前期准备:

            1、create table person  # 假设这张表用来收录所以有地球人的基本信息。

                             (ID bigint ,

                             Name varchar(16),

                             Country varchar(16)); 

           2、create view Chinise  # 这个视图用于查询所以有中国人的基本信息。

           as 

           select ID,Name,Country from Person

           where Country = ‘China’;

          

           3、查找中国叫张三的人

           select ID,Name,Country from Chinese where Name = ‘张三’;

——————————————————————————————————————————————————–

方法 1、

         合并算法

         这中算法中、视图的数据还是只保存在表中、并没有从表中分离出来;也就是说我们对   张三    的查询会转化为

         select ID,Name,Country from Chinese where Name = ‘张三’ and Country = ‘China’;引擎会帮我们完成

         条件的合并。合并算法内部是一个映射关系,如果 view的第一行 对就table 的X 行,view的第二行对应table 的第y 行。

         既然是一种映射对view第一行的修改也就是对 table 第X行的修改。delete时同理。

         也就是说合并算法支持对view 的 insert update delete select;(上文说的映射是 一对一映射)

         然、

         有些时候合并算法是没有办法完成的、也就是说对view 的 insert update delete select;都会引发错误。

         如:create view viewXXX as select Name ,count(*) from person group by Name;这样就不存在一对一的映射了,也就不能用合并算法了

方法 2、

         临时表算法

         就是把view 查询出来的数据保存到一张临时表中、以后对view的操作就是对这张表的操作,哪怕是多个用户也是一张表。引擎会在合适的时间内

         更新这张表、

 

 

 

 

 

 

 

 

 

 

         

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/109704.html原文链接:https://javaforall.net

(0)
上一篇 2021年9月1日 上午10:00
下一篇 2021年9月1日 上午10:00


相关推荐

  • 龙虾OpenClaw爆火,现场安装人气爆棚

    龙虾OpenClaw爆火,现场安装人气爆棚

    2026年3月13日
    3
  • docker部署web项目_docker构建高可用web应用

    docker部署web项目_docker构建高可用web应用前言前面我们运行的容器并没有一些什么特别的用处。接下来让我们尝试使用docker构建一个web应用程序。我们将在docker容器中运行一个PythonFlask应用来运行一个web

    2022年7月30日
    6
  • Ubuntu 下搭建 NFS 服务

    Ubuntu 下搭建 NFS 服务1 NFS 介绍 NFS 即网络文件系统 NetworkFile System 可以通过网络让不同机器 不同系统之间可以实现文件共享 通过 NFS 可以访问远程共享目录 就像访问本地磁盘一样 NFS 只是一种文件系统 本身并没有传输功能 是基于 RPC 远程过程调用 协议实现的 采用 C S 架构 2 安装 NFS 软件包 sudoapt getinstallnf kernel se

    2026年3月17日
    2
  • 豆包1.6模型全面升级:实测效果与云原生Agent开发实战

    豆包1.6模型全面升级:实测效果与云原生Agent开发实战

    2026年3月12日
    2
  • clion 激活码2022_在线激活「建议收藏」

    (clion 激活码2022)这是一篇idea技术相关文章,由全栈君为大家提供,主要知识点是关于2021JetBrains全家桶永久激活码的内容IntelliJ2021最新激活注册码,破解教程可免费永久激活,亲测有效,下面是详细链接哦~https://javaforall.net/100143.htmlFZP9ED60OK-eyJsaWN…

    2022年4月1日
    1.7K
  • 玩转软路由 篇四:软路由中OpenWRT作为旁路由的安装设置教程

    玩转软路由 篇四:软路由中OpenWRT作为旁路由的安装设置教程开篇说一些仁者见仁智者见智的话,先声明,这只是代表我自己近期浅陋的看法。看到很多人玩路由器,刷各种固件,什么爱快、高格、老毛子、OpenWRT什么的,自己也折腾过,也在恩山论坛里下载各路大神的固件使用。作为一个小白,就自然而然想到,这么多固件,哪个最好?当然对于这个问题,每个人的回答都不一样,毕竟适合自己的才重要。经过我自己不断在网上寻找答案,最后形成了一个成熟的看法,那就是真正的好不好,关键点在驱动,驱动做得会使得路由系统如虎添翼。但是,很多芯片厂家在卖芯片的时候是需要承诺不可进行二次开发的,所以路由器大

    2022年6月11日
    92

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号