SQLite进阶-17.视图

目录

  • 视图(View)

    • 操作视图
    • 更新视图
    • 删除视图
    • 查看所有的视图

视图(View)

视图是一个预定义的SQLite查询的形式存在的表的组合。

可以包含一个表的所有行或从一个或多个表选定行。可以从一个或多个表,这取决于创建视图的语句。

视图(View)是一种虚表,是只读的,因此在视图上无法执行DELETE,INSERT或UPDATE语句。但是可以创建一个触发器,视图上发生DELETE,INSERT或UPDATE操作时,需要做的操作在触发器内实现。

-- 语句
CREATE [TEMP | TEMPORARY] VIEW view_name AS
    SELECT column1, column2..
    FROM table_name
    WHERE [condition];
-- SELECT 语句可以操作多个表。
-- 关键字TEMP 或 TEMPORARY 用于创建临时视图。

-- 实例
CREATE VIEW link_men_view AS
    SELECT ID, NAME
    FROM link_name;

视图使用场景例如

  1. 当客户需要访问你的数据,而你又不想暴露所有字段值时,可以使用。
  2. 当某个需求需要查询多个表时,可以创建临时视图供使用。

操作视图

与操作普通表一样

SELECT * FROM link_men_view;

更新视图

OR REPLACE关键字,如果当前数据库中已经存在指定名称的视图时, 当前正在创建的视图会覆盖掉原来同名的视图。

-- 语句
CREATE  OR REPLACE VIEW view_name AS
    SELECT column1, column2..
    FROM table_name
    WHERE [condition];

-- 实例
CREATE OR REPLACE VIEW link_men_view AS
    SELECT ID, NAME
    FROM link_name;

删除视图

DROP VIEW link_men_view;

查看所有的视图

下面的语句要在命令行执行。

select * from sqlite_master where type='view';

原文地址:https://www.cnblogs.com/haitao130v/p/11372047.html

时间: 2024-10-13 18:32:00

SQLite进阶-17.视图的相关文章

[.net 面向对象程序设计进阶] (17) 多线程(Multithreading)(二) 多线程高级应用

[.net 面向对象程序设计进阶] (17) 多线程(Multithreading)(二) 多线程高级应用 本节要点: 上节介绍了多线程的基本使用方法和基本应用示例,本节深入介绍.NET多线程中的高级应用. 主要有在线程资源共享中的线程安全和线程冲突的解决方案:多线程同步,使用线程锁和线程通知实现线程同步. 1. ThreadStatic特性 特性:[ThreadStatic] 功能:指定静态字段在不同线程中拥有不同的值 在此之前,我们先看一个多线程的示例: 我们定义一个静态字段: static

[Xcode10 实际操作]九、实用进阶-(17)使用CGBlendMode改变UIImage颜色,实现对图片进行混合着色

本文将演示如何使用CGBlendMode改变UIImage颜色,实现对图片进行混合着色. 在项目文件夹[DemoApp]上点击鼠标右键 ->[New File]创建一个扩展文件->模板选择窗口:[Swift File]->[Next] ->[Save As]:ExtensionUIImage.swift->保存默认的存储位置点击[Create] 在[ExtensionUIImage.swift]添加一个针对UIImage类的扩展. 扩展可以向一个已有的类.结构体或枚举类型添加

17.视图--SQL

一.什么是视图 视图是虚拟的表 为什么使用视图 重用SQL语句. 简化复杂的SQL操作.在编写查询后,可以方便地重用它而不必知道其基本查询细节. 使用表的一部分而不是整个表. 保护数据.可以授予用户访问表的特定部分的权限,而不是整个表的访问权限. 更改数据格式和表示.视图可返回与底层表的表示和格式不同的数据. 警告:性能问题因为视图不包含数据,所以每次使用视图时,都必须处理查询执行时需要的所有检索.如果你用多个联结和过滤创建了复杂的视图或者嵌套了视图,性能可能会下降得很厉害.因此,在部署使用了大

T-SQL查询进阶--深入浅出视图

简介   视图可以看作定义在SQL Server上的虚拟表.视图正如其名字的含义一样,是另一种查看数据的入口.常规视图本身并不存储实际的数据,而仅仅存储一个Select语句和所涉及表的metadata. 视图简单的理解如下: 通过视图,客户端不再需要知道底层table的表结构及其之间的关系.视图提供了一个统一访问数据的接口. 为什么要使用视图(View) 从而我们不难发现,使用视图将会得到如下好处: 视图隐藏了底层的表结构,简化了数据访问操作 因为隐藏了底层的表结构,所以大大加强了安全性,用户只

python3开发进阶-Django视图(View)的常见用法

阅读目录 简述Django的View(视图) CBV和FBV Request对象和Response对象 Django组件(render,redirect)详解 一.简述Django的View(视图) 一个视图函数(类),简称视图,是一个简单的Python 函数(类),它接受Web请求并且返回Web响应. 响应可以是一张网页的HTML内容,一个重定向,一个404错误,一个XML文档,或者一张图片. 无论视图本身包含什么逻辑,都要返回响应.代码写在哪里也无所谓,只要它在你当前项目目录下面. 除此之外

SQLite进阶-10.约束

约束 约束是作用于数据表中列上的规则,用于限制表中数据的类型.约束的存在保证了数据库中数据的精确性和可靠性. 约束可以是列级或表级,列级约束作用于单一的列,而表级约束作用于整张数据表. SQLite中常见的约束: NOT NULL 约束:确保某列不能有NULL值. DEFAULT 约束:当某列没有插入值时,为该列提供默认值. UNIQUE 约束:确保某列中的所有值是不同的. PRIMARY KEY 约束:唯一标识数据库表中的数据. FOREIGN KEY 约束:一个表中的 FOREIGN KEY

SQLite进阶-18.事务

目录 SQLite事务 事务的属性 事务控制 BEGIN TRANSACTION命令 COMMIT命令 ROLLBACK命令 SQLite事务 事务(Transaction) 是一个对数据库执行工作单元.事务是以逻辑顺序完成的工作单元或序列,可以是由用户手动操作完成,也可以是由某种数据库程序自动完成. 事务是指一个或者多个改变数据库的扩展.例如:如果你正在创建一个记录或者更新一个记录或者从表中删除一个记录,那么你正在该表上执行事务.重要的是要控制事务以确保数据的完整性和处理数据库错误. 实际上,

SQLite进阶-19.常用函数

目录 SQLite常用函数 SQLite常用函数 SQLite 有许多内置函数用于处理字符串或数字数据. 序号 函数 & 描述 1 SQLite COUNT 函数SQLite COUNT 聚集函数是用来计算一个数据库表中的行数. 2 SQLite MAX 函数SQLite MAX 聚合函数允许我们选择某列的最大值. 3 SQLite MIN 函数SQLite MIN 聚合函数允许我们选择某列的最小值. 4 SQLite AVG 函数SQLite AVG 聚合函数计算某列的平均值. 5 SQLit

关于视图和路由的进阶技巧

关于视图和路由的进阶技巧 视图装饰器 Python装饰器让我们可以用其他函数包装特定函数. 当一个函数被一个装饰器"装饰"时,那个装饰器会被调用,接着会做额外的工作,修改变量,调用原来的那个函数.我们可以把我们想要重用的代码作为装饰器来包装一系列视图. 装饰器的语法看上去像这样: @decorator_function def decorated(): pass 如果你看过Flask入门指南,那么对这个语法应该不敢到陌生.@app.route正是用于在Flask应用中给视图函数设定路由