00:06
来继续咱们看一下视图。师徒。能不能开发秒杀外挂,那当然可以啊,可以啊,但是这个你低调点啊,你要对秒杀了解的非常透彻是吧,你比如现在京东商城,他可能有一个秒杀,对不?你要参与一下,你可以写程序啊。秒杀外挂,这个就这个秒杀外挂就是不用人点。懂吧,就秒杀开始就刷程序一执行是吧,秒到商品你放心啊,我们这个秒杀肯定会控制这块的,秒杀功能的时间肯定要控制这块的啊。玩游戏的时候。
01:02
不是,那你们,那你们想想12306抢票软件怎么开发出来的。对吧。那是现在你可不知道12306刚上线那会儿,刚上线那会,12306刚上线那会儿那抢票那是吧,就直接刷一刷就刷到了。对,一会就刷到了,就是这样啊,但现在呢,这个他这个12306,它也在不断的升级,对吧,他升级这升级验证码受得了吗?是不是以前的时候验证码很简单,现在验证码就是请找出下图当中所有的什份证么?是吧?那这个时候我我们看起来很费劲啊,机器的识别就很就很慢,就更慢啊。行了,先不说这个了啊,咱不说这个,咱们得赶紧的抓紧时间啊,下边还有一些东西视图,各位,今天呢,咱们讲的理论比较多,但是代码比较少。
02:00
是不是代码比较少,理论偏多一些,他不像我们昨天我们讲的时候,我们一直在写代码,写select语句,Select语句这个就是理论,他这前今天的内容反而会更轻松一些啊,更轻松一些,对理论上的东西比较多一些,来看看视图吧各位啊,呃,首先呢,咱们先谈的第一个问题就是什么是视图?对吧,就是站在不同的角度看待看待数据啊,站在不同的角度去看待什么数据。就是同一张表的数据可以站在不同的角度去看啊,同一张表的数据通过不同的角度去看待,试图英语单词叫view。啊叫那怎么创建视图呢?怎么删除视图呢?我们先把这个说了好吧,Create。
03:12
怎么删除视图?Drop view my view,好就删掉了。语会了吧,好,那接下来我们创这个。视图创建完了各位啊,我们可以对视图进行查询。对试图进行什么增删改查会影响到什么原表数据?注意啊,对试图进行增删改查会影响到原表数据。但你是通过视图。来影响原表数据的。
04:04
通过试图影响什么原表数据的各位。不是直接操作的什么原表。一会你就知道视图有什么用了啊,就是说视图呢,它是站在不同角度的角度去看待这个数据,怎么创建create,怎么删除drop。但是有一点我需要说一下啊,视图在创建的时候,后边这个只能写select语句,也就是说只有select语句可以创建做视图对象。注意啊,只有什么DQL语句才能怎么着以什么试图对象的方式创建出来。各位。但我们可以对视图进行CD,明白吗?可以对视图进行c rud操作啊。
05:03
但是创建视图的时候,我们只能以什么语句创建视图,以DQL语句创建视图啊,来大家看一看,我们在这呢,我们创建视图各位啊,呃呃,视图创建好了,S什么from什么my view,这是不是对视图进行检索呀?对试图进行检索啊好,这是面向视图操作,各位啊。你select from后边跟表对不对,但现在我跟的是个什么名字,仕图的名字,各位啊,仕图的名字来,我再去创建个视图,各位啊,再创建个create,呃,我觉得这样啊,我们最好操作不要影响到这个emp表,Emp表最好不要影响到我CREATE1张表啊,Table行吧什么。什么情况?EP2吧,E pemp bak bak吧,行吧,Selecting from_bak好,各位看现在是不是有一张表叫E下BK啊,有这么一张表吧?诶,这是一张新表,各位啊,这是视图吗?
06:15
不是吧,不是试图啊,我创建视图,以视图的形式创建出来,怎么创建。Create table EP下跟BK as select from,好,这个EP下跟BK表创建出来了,出来之后呢,我create view my view一行吧,As as啊什么呢,YYP这个然后呢,E name,然后salary,啊,Salary,然后from y p加bak啊好,能看懂吧。11把后边这个s select语句是不是当做视图创建出来来拿过来之后粘贴,贴过来之后我们走一个,走了之后呢,接下来这个视图就完美的创建了啊创建视图之后,接下来我写一个update语句,Update谁update my什么my view my view my view my view几啊一。
07:03
呃,Set什么呢?Set这个这个e name啊等于呵呵啊,然后等于什么呢?一然后where条件是什么呢?这个这个EP number等于7369。行吧。诶,这什么意思,Update my view这不视图吗?是这个,这是那个视图吗?这个视图里边有这个字段,这个字段和这个字段吗?那SET1NAME就是改一下呗,然后塞也改一下,然后外九来我们看能不能改啊,也就是我改修改视图原表的数据,看一下谁bak吧查。改了吗?7369再也不叫史密斯了,叫呵呵啊,然后呢,薪资是一。
08:05
这不就是?通过试图修改原表数据吗?那删呢?Delete from这个my view条件是三,呃,条件是等于7369对吧?来对视图进行删啊,删完之后呢,Select谁。查这个bak。13条记录没了。丢了一条吧,这个还是通过视图干什么,不是修改叫什么删除原表数据,那有的老师你这个操作有啥意思啊,你直接操作人家这个emmp下划线,这个BAT表不得了吗?你这整半天你就改视图改这改那的,是不是感觉这个东西好像很麻烦呀,是吧?诶诶我来说一下它的这个真正的一个一个一个用法啊用法。
09:06
他这个视图有什么有什么作用,就是我们也看了半天代码了,是吧,视图也会创建了,也会删除了,这个删除我没有演示啊,你可以自己演示一下啊,然后呢,这个视图呢,这块呢,我诶我看呢,进行视图的一个资产改查,会影响原表数据也演示了,那再往下呢,咱们看看视图有什么用,我来说一下啊,试图的作用是。举个例子,比如说现在你开发的这个系统是是一个这个。保密级别比较高的系统。比如说你给军队开发,当然军队可能不让你开发,对军方那边呢,他有这个军方那边他有DBA,注意啊,军方那边有个DBA。就是数据库管理员明白吧,军方呢,他有个系统啊。
10:00
他外包了啊,完了,系统外包给动力节点了,明白吧,咱们动力节点的有很多员工嘛,咱们给军方开发了系统,但军方呢,他他不想让我们动力基点知道军方的数据库。就军方这边的系统,它保密机率比较高,军方有一块系统外包了,包给咱们重机点了,让咱们去开发这个系统。我们去开发这个系统的时候,他们不希望让我们知道他们军方的数据库的一个明细。就说白了,军方那边到底有什么表,表里边到底什么字段?他不让我们知道,于是乎军方那边的DBA为我们动力机点的加码程序创建了N多个视图,然后我们这边程序开发的时候,我们只能对试图进行资产改查。我们把代码好写完了,明白吧,我们代码中都是对什么操作,对试图进行增产改查,懂吧,然后接下来我们这个系统只要给了军方之后,军方只要一对接,因为军方的DBA他们是不是内部已经把视图都创建好了,所以我们只要加入程序,对接妥了,这个这个软件就运作了。
11:14
看看,然后是查询的时候,是不是把它别名别名别名都记好了,那以试图创建出来之后,大家看视图有了select from my view几啊二好,大家看这个视图里边是不是只有三个字段叫ABC,也就是说你只知道有一个视图叫什么my view2然后呢,你也知道这个视图里边有ABC3列,你剩下的什么也不知道了。
12:01
没有吧?然后接下来你的增删改查insert,对吧?Insert,什么into,谁,MY,什么view are my view2里边有A字段,B字段,C字段,Values。能理解吧,哎,就把值给它填进去,然后一回车一执行妥了,这个数据就放进去了。你只知道有这么一个视图,这个视图里面这几个字段。至于说这个这个视图下面对应的这个数据,我告诉你,军方他也不会给你的。他不会给你这个数据的。他就告诉你,你给我写一个Java的增删改查,你把这张表给我维护起来就完事了。就是你把这个仕途给我维护起来就行了,别的你不用管。那这个代码就可以外包出去啊。是吧,那那无非你就是对这仕途责任改啥呀?你也接触不到,接触不到原表这个保密级别比较高的一些东西,所以说试图的作用是什么,视图可以隐藏表的什么,实现细节。
13:16
保密级别较高的系统可能只数据库啊,只对外提供相关的什么视图啊,Java程序员程序员啊,只对视图对象进行CD。不多,很少用。很少用啊,视图很少用,但视图跟索引这两块合起来,那肯定是索引用的多,百分百的,所以您天天要调优什么之类的啊,可能会用这个索引,视图这块呢,就简单作为一个了解内容。
14:04
我再说一下啊,视图并不会提高检索效率。通过视图查询,并不是说提高了他查询效率,不是这个啊,提高不了,提高不了,因为他一切的操作都是还是最终回到哪啊,回到原表上。他对视图进行操作,说白了实际上他还是什么呀,还是操作的原表,通过原表当中的数据进行检索的啊行了,这个视图这块呢,我们就说到这各位啊,这个知识点呢,也作为一个了解内容啊了解内容。
我来说两句