2018/05/18 数据库 视图

Posted Zzz哈

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了2018/05/18 数据库 视图相关的知识,希望对你有一定的参考价值。

最近有点忙,都没有时间来写博客了。

不过这也是自我沉淀的一个过程。

什么是视图?

  视图并没有想象的那么复杂,简单来说的话。

  视图就是把你写的SQL保存起来,在使用视图的时候等于使用了这么个SQL。

 

为什么要用视图?

  当业务足够复杂的时候,多个表之间的数据关联越来越紧密。当我们要找一条数据的时候往往要写长的SQL。

  而这些SQL往往都是可以重复使用的。

  于是,当我们有了视图之后,就通过视图直接查询即可。

视图是虚拟表,本身不存储数据,而是按照指定的方式进行查询。

 

如何创建一个视图?

CREATE VIEW 视图名(列1,列2...) AS SELECT (列1,列2...) FROM ...;
           这里是向外暴露的字段 搜索的SQL

先举一个简单的例子,我建立一个 user 的视图

CREATE VIEW v_user AS (SELECT * FROM user);

很简单,对吧。

这里查看一下你的表

mysql> show tables;
+----------------------------------+
| test                             |
+----------------------------------+
| user                             |
| v_user                           |
+----------------------------------+
11 rows in set (0.00 sec)

视图就像一张表一样存在。

 

如何使用视图?

使用视图和使用表完全一样,只需要把视图当成一张表就OK了。视图是一张虚拟表。

就像使用表一样,不过对于视图来说,只推荐查找,虽然说也可以用与增删改,但是视图过于复杂的话有很大问题会出错。

SELECT * FROM v_user;  查找所有人员信息

SELECT * FROM v_user whser id =1;  查找ID等于1人员信息

就像正常查找数据表一样

以上是关于2018/05/18 数据库 视图的主要内容,如果未能解决你的问题,请参考以下文章

如何在片段中填充列表视图?

如何在kotlin的片段内显示网格视图?

当我从用户获取数据并将其保存到 SQLite 数据库中时,我应该怎么做才能使列表视图在片段中工作

片段之间的共享数据(父列表视图和子列表视图)

片段和视图寻呼机

回收站视图未显示在片段中