视图(view)

视图是从不同角度查看数据的一种方式,是MySQL中的一个对象,用于存储和管理查询语句,提高查询效率并隐藏底层表结构。通过创建视图,可以简化复杂SQL的重复使用,方便后期维护。面向视图的增删改查操作会直接影响到原表数据。视图提供了一种抽象,增强数据安全性,并简化了CRUD操作。
摘要由CSDN通过智能技术生成

1、视图:(了解内容)

        就是站在不同的角度去看待同一份数据。

       视图是MySQL服务器中的一个对象,用于存储查询语句,目的的提高查询语句的使用效率,避免在多处地方重复性开发相同的查询语句。

      - 将查询语句交给一个视图对象来管理:

        create view 视图对象名 as 查询语句

        例如:create view emp_view as select * from emp where empno = 7369;

      - 通过视图对象调用管理查询语句

        select * from emp_view;        #该语句调用了select * from emp where empno = 7369;

        额外功能:

              视图对象存储一个查询语句,同时视图对象拥有对当前查询语句所关联的表文件的操作能力也就是说:可以对所关联的表文件进行增删改的操作。

        视图的作用:

              * 提高了查询语句的复用性,避免了在多处地方重复进行查询语句的开发。

              * 隐藏了业务中涉及到的表关系。增强了私密性。

     2、创建与删除视图:

                 创建视图

                 创建表student的视图对象名为student_view.

                 create view student_view as select * from student;

            注意:as 后面只能跟select语句。  只有DQL语句才能以view的形式创建。

                  删除视图

                  drop view student_view;

     3、我们用视图来做什么?

            我们可以面向视图对象进行增删改查,对视图对象的增删改,会导致原表被操作!

    (视图的特点:通过对视图的操作,会影响到原表数据。

        例如:

        查询原表:

        mysql> select * from student;

                 

        创建视图对象:

        create view student_view as select * from student;

        向视图对象中插入数据

        insert into student_view values(1003,'jack','jack@123.com',30);

        再次查询原表:

        mysql> select * from student;

                

        面向视图删除:

        delete from student_view where id = 1003;

                        

     4、视图对象在实际开发中到底有什么用?

            假设有一条非常复杂的SQL语句,而这条SQL语句需要在不同的位置上反复使用,每次使用该语句的时候都需要重新编写,很长很麻烦。这时就可以把这条复杂的SQL语句以视图对象的形式创建,在需要编写这条SQL语句的位置直接使用视图对象,可以大大简化开发,并且有利于后期维护,因为需要修改的时候也只需要修改一个位置就行,只需要修改视图对象所映射的SQL语句。视图对象也是一个文件,在数据库中以文件的形式存在,存储在硬盘上,关机以后不会消失。我们以后面向视图开发的时候,使用视图就像使用table(表)一样,可以对其进行增删改查的操作。

     【小插曲】:

            增删改查又叫CRUD。CRUD是公司中程序员之间沟通的术语,一般我们很少说增删改查。都说CRUD

             C:create

             R:Retrive

             U:update

             D:delete

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值