视图(View)只不过是通过相关的名称存储在数据库中的一个 SQLite 语句。视图(View)实际上是一个以预定义的 SQLite 查询形式存在的表的组合。

视图(View)可以包含一个表的所有行或从一个或多个表选定行。视图(View)可以从一个或多个表创建,这取决于要创建视图的 SQLite 查询。、

视图(View)是一种虚表,允许用户实现以下几点:

  • 用户或用户组查找结构数据的方式更自然或直观。

  • 限制数据访问,用户只能看到有限的数据,而不是完整的表。

  • 汇总各种表中的数据,用于生成报告。

SQLite 视图是只读的,因此可能无法在视图上执行 DELETE、INSERT 或 UPDATE 语句。但是可以在视图上创建一个触发器,当尝试 DELETE、INSERT 或 UPDATE 视图时触发,需要做的动作在触发器内容中定义。

创建视图

SQLite 的视图是使用 CREATE VIEW 语句创建的。SQLite 视图可以从一个单一的表、多个表或其他视图创建。

CREATE VIEW 的基本语法如下:

CREATE [TEMP | TEMPORARY] VIEW view_name AS
SELECT column1, column2.....
FROM table_name
WHERE [condition];

您可以在 SELECT 语句中包含多个表,这与在正常的 SQL SELECT 查询中的方式非常相似。如果使用了可选的 TEMP 或 TEMPORARY 关键字,则将在临时数据库中创建视图。

实例

假设 COMPANY 表有以下记录:

ID          NAME        AGE         ADDRESS     SALARY
----------  ----------  ----------  ----------  ----------
1           Paul        32          California  20000.0
2           Allen       25          Texas       15000.0
3           Teddy       23          Norway      20000.0
4           Mark        25          Rich-Mond   65000.0
5           David       27          Texas       85000.0
6           Kim         22          South-Hall  45000.0
7           James       24          Houston     10000.0

现在,下面是一个从 COMPANY 表创建视图的实例。视图只从 COMPANY 表中选取几列:

sqlite> CREATE VIEW COMPANY_VIEW AS
SELECT ID, NAME, AGE
FROM  COMPANY;

现在,可以查询 COMPANY_VIEW,与查询实际表的方式类似。下面是实例:

sqlite> SELECT * FROM COMPANY_VIEW;

这将产生以下结果:

ID          NAME        AGE
----------  ----------  ----------
1           Paul        32
2           Allen       25
3           Teddy       23
4           Mark        25
5           David       27
6           Kim         22
7           James       24

删除视图

要删除视图,只需使用带有 view_name 的 DROP VIEW 语句。DROP VIEW 的基本语法如下:

sqlite> DROP VIEW view_name;

下面的命令将删除我们在前面创建的 COMPANY_VIEW 视图:

sqlite> DROP VIEW COMPANY_VIEW;

SQLite 视图(View)相关推荐

  1. php sqlite视图,SQLite 视图

    视图(View)只不过是通过相关的名称存储在数据库中的一个 SQLite 语句.视图(View)实际上是一个以预定义的 SQLite 查询形式存在的表的组合. 视图(View)可以包含一个表的所有行或 ...

  2. 使用RazorGenerator对视图View进行单元测试

    在ASP.NET MVC里我们可以很方便的对模型Model.控制器Controller进行单元测试,但对于 视图View的测试就没那么容易和直接了.在这里介绍一种方法,使用RazorGenerator ...

  3. Oracle 学习笔记 11 -- 视图 (VIEW)

    本次必须学习一个全新的概念-- 视图 (VIEW).在前面的笔记中曾提到过,数据对象包含:表.视图.序列.索引和同义词.前面的笔记都是对表的想剖析,那么本次笔记就对视图的世界进行深入的剖析. 视图是通 ...

  4. 3.5 《数据库系统概论》之基本表更新(INSERT、UPDATE、ALTER、DELETE)与视图VIEW(定义、查询、更新)

    文章目录 0.前言 1.思维导图 2.基本表更新---TABLE (1)插入数据---INSERT INTO ① 插入元组 ② 插入子查询结果 (2)修改数据---UPDATE SET ① 修改某一个 ...

  5. MySQL笔记(六)视图 view

    这是我在学习Mysql之路上做的笔记,今天将它粘出来.这一篇主要是Mysq的视图 view.有错误的欢迎大家指出... 数据库的创建参考我的另一篇博客 https://blog.csdn.net/cs ...

  6. 使用mvc时,在视图view中使用强类型视图,在web.config文件中添加命名空间namespace的引用不起作用,解决方法...

    这是view中的model代码: @model t_user_info 这是web.config配置文件只的代码: <namespaces><add namespace=" ...

  7. mysqldump导出数据库视图_mysql中如何用mysqldump批量如何导出视图view啊?

    你的位置: 问答吧 -> MySQL -> 问题详情 mysql中如何用mysqldump批量如何导出视图view啊? mysql中如何用mysqldump批量如何导出视图view啊? 我 ...

  8. dns日志级别 linux,linux下DNS服务器视图view及日志系统详解

    linux下DNS服务器视图view及日志系统详解DNS服务器ACL:在named.conf文件中定义ACL功能如同bash当中定义变量,便于后续引用 ACL格式: acl ACL名称 { IP地址1 ...

  9. django批量修改table_python中Django视图(view)的详解(附示例)

    本篇文章给大家带来的内容是关于python中Django视图(view)的详解(附示例),有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助. 一个视图函数(类),简称视图,是一个简单的Py ...

最新文章

  1. 让瘫痪失语患者「说话」,脑机接口首次从大脑活动解码完整句子,登上新英格兰医学杂志...
  2. mysql8jdbc连接串_mysql8 JDBC连接注意事项
  3. button/input链接方式全攻略 [转]
  4. 2017.10.5 最短母串 思考记录
  5. 【UVA12169】不爽的裁判
  6. 如何使用 ggplot2 ?
  7. Java 用Myeclipse部署项目基础坏境搭建
  8. Excel可视化图表模板,图表控的你快收藏呀!!!
  9. 迈达斯导出html计算书,动态计算书模块功能-midas Civil 2011
  10. 面试丨求职时这样回答问题你就输了!来自IT面试官视角的深度解读
  11. 软件工程之软件质量管理
  12. iserdese2接口详解_-02-Xilinx的SerDes接口介绍【Xilinx-LVDS读写功能实现】
  13. 钓鱼网站制作Kali
  14. 客户关系管理系统(CRM)的开发过程中使用到的开发工具总结
  15. 中国特殊灯具行业市场供需与战略研究报告
  16. linux uart应用开发(ttyS*设备)
  17. 鸿蒙系统的用途,华为高级副总裁谈鸿蒙系统:主要为工业用途
  18. 【插件】Unity插件UnitySRDebugger的简单使用
  19. java lang IllegalArgumentException Invalid character found
  20. 计算机系毕业祝福语,搞笑开心的毕业祝福语

热门文章

  1. android 刘海机型适配,Android全面屏刘海适配
  2. 如何使用Imatest进行色彩还原测试
  3. The pylance server crashed 5 times in the last 3 minutes
  4. 退出telnet 命令
  5. 集线器、交换机以及路由器异同 + 冲突域和广播域详解
  6. css–sprit_CSS速记与速记–使用哪个
  7. BPM- Eteams体验报告
  8. AI基础:自然语言处理基础之序列模型
  9. node安装与环境搭建 + VUE项目搭建
  10. 4gl的内建函数和操作符简介