本系列blog源自前年写的SQL学习笔记,汇总一下发上来。(1月份发了前三篇笔记,原以为后面的笔记误操作删了,今天在硬盘里又找到了,一起发上来)
--------------------------------
除了ORDER BY子句通常是被禁止的,几乎所有有效的SELECT语句都可以定义视图。
可以嵌套视图,视图的SELECT语句可以从其他视图中检索数据。
将包含大量运算的查询存储为视图,就可以通过查询视图重复这些运算。
视图不能引用自身。
有别于基础表,视图不支持约束。有些DBMS允许对视图建立索引。
因为视图不存储数据,DBMS必须在每次引用时执行它们。尤其是嵌套视图,可能严重的降低效率。
CREATE
VIEW view AS select_statement;
视图存在于SQL语句的生存期,临时表存在于进程的生存期。
标准SQL没有ALTER VIEW语句,如果在建立视图之后,基础表或视图发生了变化,就要删除并重建这个视图。然而,大多数DBMS都支持非标准的ALTER VIEW语句。
通过视图修改数据:
可修改视图:指可以使用插入、更新和删除操作来改变基础表中数据的视图。对可修改视图做的任何变化都将明确地传递到基础表。
不可修改(只读)视图:不支持插入、修改和删除操作的视图,因为对数据的改动可能是含糊不清的,要改变出现在只读视图的数据,必须直接修改基础表(或通过其它可修改视图)。
单一表视图总是可更新的。
DBMS检查基础表的联结和多表视图的引用完整性约束来决定视图是否可更新。以下这些类型的查询可以定义为可更新得视图:
一对一内联结。
一对一外联结。
一对多内联结。
一对多外联结。
多对多联结。
UNION和EXCEPT查询。
可更新视图必须包含基本表的键来保证每个视图指向基本表的一行。
可更新视图不包含的列必须可以为空或在基础表有一个默认值,以便DBMS能够在插入时构建整行。
更新值必须符合基础表列的限制,如数据类型、可否为空及其它约束。
删除视图:DROP VIEW view;
删除表不会删除引用这个表的视图,所以必须使用DROP VIEW显示删除视图。
分享到:
相关推荐
在SQL Server数据库管理系统中,视图是数据库设计和数据查询中的一个重要概念。视图可以被理解为一个虚拟的表,它并不实际存储数据,而是基于一个或多个表或视图的SELECT语句结果集。视图是数据库对象,提供了一种...
总结起来,“sql_init.zip”文件是netctoss项目数据库初始化的关键组成部分,它包含了创建和配置数据库所需的所有SQL指令。理解并正确使用这个脚本对于项目顺利启动至关重要,同时也体现了数据库设计和管理在软件...
二、SQL基础概念 1. 表(Table):SQL中的基本数据结构,由行(Row)和列(Column)组成,类似于电子表格。 2. 数据类型:SQL支持多种数据类型,如整数(INTEGER)、浮点数(FLOAT)、字符串(VARCHAR)、日期时间...
通常情况下,通过视图直接更新或删除数据可能会遇到限制,具体取决于视图的定义以及基础表的结构。例如,如果视图中包含了聚合函数或其他不可更新的表达式,则可能无法直接通过视图更新数据。因此,在尝试通过视图...
1. SQL基础: - 数据库模型:了解关系型数据库的基本原理,如实体-关系模型(E-R Model),以及表和字段的概念。 - DDL(Data Definition Language):创建数据库和表,如CREATE DATABASE、CREATE TABLE等。 - ...
2. 复杂视图:基于多个表或视图,可能包含子查询、联接或其他复杂操作。 四、使用视图 创建视图后,用户可以通过`SELECT`, `INSERT`, `UPDATE`和`DELETE`语句来操作视图。但需要注意,对视图的操作可能会受到原始表...
一、SQL基础 1. 数据库与表:SQL主要用于创建、查询、更新和管理数据库中的数据。数据库是一个组织有序的数据集合,而表则是存储数据的基本单元,由列(字段)和行(记录)组成。 2. DDL(Data Definition ...
总结来说,索引视图是提高SQL Server 2000数据库查询性能的有效工具,尤其适用于需要频繁处理联接和聚合数据的场景。但同时,开发者必须注意索引视图的适用场景和维护成本,合理配置数据库环境和SET选项,并确保视图...
### 跨服务器建立视图SQL #### 一、引言 在实际的数据库管理与开发过程中,经常会遇到需要从不同的数据库服务器中获取数据并进行整合的情况。为了方便地实现这一需求,可以采用跨服务器查询的方式来构建视图。本文...
《Microsoft SQL Server 2008技术内幕:T-SQL语言基础》适合须要学习T-SQL的各级程序员和数据库专业人员,是他们快速掌握T-SQL的必备参考图书。 致谢 引言 第1章 T-SQL查询和编程基础 1.1 理论背景 1.2 ...
12. **视图(Views)**:视图是虚拟表,由SQL查询定义,可以简化复杂查询,并提供数据的安全性。 以上就是SQL语句总结的关键点,特别是对于MySQL数据库的使用。掌握这些基本概念和高级技巧,将极大地提升你在数据库...
### SQL Server 视图与索引详解 #### 一、视图的概念与操作 ##### 1.1 视图的基本概念 视图是基于SQL语句的结果集的一种虚拟表,其内容由查询定义。同真实的表一样,视图包含一系列带有名称的列和行数据。但是,...
* SQL 视图:用于简化复杂的查询。 * SQL 索引:用于提高查询速度。 * SQL 优化:包括查询优化、索引优化、缓存优化等。 实践项目 * 构建网站:包括网站构建、万维网联盟(W3C)、浏览器信息、网站品质等。 * ...
总结来说,视图在MySQL数据库中扮演着一个重要的角色,它为用户提供了定制化的数据视图,简化了数据管理和查询,增强了数据安全性和共享性,并且能够适应数据库结构的变化,保持数据逻辑独立性。通过巧妙地利用视图...
例如,创建一个名为 `master_view` 的视图,显示 `sqlite_master` 表中的所有视图: ``` CREATE VIEW master_view AS SELECT * FROM sqlite_master WHERE type='view'; ``` CREATE TRIGGER CREATE TRIGGER 语句用于...
(1)创建视图: 创建视图需要使用CREATE VIEW语句,例如: ```sql CREATE VIEW Departments_View AS SELECT * FROM Departments; ``` (2)修改视图: 修改视图需要使用ALTER VIEW语句,例如: ```sql ALTER VIEW...
### 知识点总结:chap06 视图 #### 1. 视图概述 - **定义**:视图可以被理解为一种虚拟表或者是存储的查询,它不实际存储数据,而是存储一个`SELECT`语句。当查询视图时,这个`SELECT`语句被执行,并返回相应的结果...
实验报告“数据库原理实验3-数据更新及视图”涵盖了数据库操作的核心方面,特别是SQL语言在数据管理和视图创建中的应用。以下是对实验内容的详细解释: 1. **数据更新语句**: - **UPDATE**:用于修改现有数据表中...
(1)使用企业管理器创建视图:在 EDUC 库中以“student”表为基础,建立一个名为“V_电脑系学生”的视图。在使用该视图时,将显示“student”表中的所有字段。 (2)使用 SQL 语句创建视图:在查询分析器中建立一...
主要内容包括SQL的基础理论、查询优化、查询算法及复杂度,以及在使用子查询、表表达式、排名函数、数据聚合和透视转换、TOP和APPLY、数据修改、分区表、特殊数据结构等实际应用时会遇到的各种高级查询问题和解决...