知识大全 创建视图(1)

Posted 视图

篇首语:每个牛逼的人,都有一段苦逼的坚持。本文由小常识网(cha138.com)小编为大家整理,主要介绍了知识大全 创建视图(1)相关的知识,希望对你有一定的参考价值。

SQL实战新手入门:创建视图(1)  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!

   创建视图( )

  对于视图的基本形式来说 将一个查询转换为一个视图非常简单 只需要在查询之前添加一个CREATE VIEW语句 并为新创建的视图定义一个名称即可 例如

  CREATE VIEW vwBooksONshelves

  AS

  SELECT

  loc_bookcase AS bookcase

   loc_shelf AS shelf

   loc_position_left AS position

   bk_title AS title

  FROM location INNER JOIN books

  ON location fk_bk_loc = books bk_id;

  这样就创建了一个视图 接下来就可以使用简单的SELECT *语法来查询该视图 例如下面的例子

  SELECT * FROM vwBooksONshelves;

  表 列出了查询视图的结果 它与定义视图的查询产生的结果完全相同

  表 将两个表的JOIN查询包装到一个视图的结果

  (续表)

  视图具有多种用途 例如封装复杂性 强制安全性等 本章随后还将非常详细地讨论这些功能 在各个RDBMS中 CREATE VIEW语句可能会带有相当多的特定于RDBMS的选项 但前面例子中的语法是通用的 在本书所讨论的每一种RDBMS中都可以正常运行

  本书中介绍的任何一个SQL查询(DQL类型的)几乎都可以转换为一个视图 但也有一些例外 在某些RDBMS中 带有ORDER BY子句的查询不能用在视图的定义中(但是GROUPBY子句则可以) 因此 某些RDBMS不允许使用执行 排序 功能的关键字(DISTINCT FIRST等) 例如 HSQLDB和MySQL允许在视图中使用ORDER BY子句 但Oracle MicrosoftAccess PostgreSQL和IBM DB 则不允许使用ORDER BY子句 任何一种RDBMS都不允许视图引用自身(这会产生一个循环引用) 也不允许引用暂态的结构 例如临时表(请参考第 章)

  Microsoft Access是一个融合了数据库和程序设计构造的集成环境 可以将它作为其他RDBMS的前端 但是这种功能具有很多限制 例如 在本章讨论的环境中 Microsoft Access数据库引擎并不支持使用CREATE VIEW语句(就这一点而言 也包括其他任何DDL语句)对非Microsoft Access引擎的数据库创建视图

  如果数据库中已经存在同名的表或视图 RDBMS将抛出一个错误 某些RDBMS(Oracle PostgreSQL和MySQL)提供了替代的REPLACE关键字用于解决这一情况(在其他数据库中 在创建同名视图之前必须先将已经存在的视图删除掉) 例如

  CREATE OR REPLACE VIEW vwbooksONshelves

  AS

  SELECT

  loc_bookcase AS bookcase

   loc_shelf AS shelf

   loc_position_left AS position

   bk_title AS title

  FROM location INNER JOIN books

  ON location fk_bk_loc = books bk_id;

  开发人员可以轻而易举地创建视图 以便限制用户只能使用数据的某个子集 子集既可以是纵向的(通过限定视图暴露的列数) 也可以是横向的(通过限制返回记录的数量)

  根据某种命名约定来命名数据库对象是一个良好的编程实践 例如 可以在视图名称前添加前缀vw 使视图与表区分开来

       返回目录 SQL实战新手入门

       编辑推荐

       Oracle索引技术

       高性能MySQL

cha138/Article/program/SQL/201311/16463

相关参考

知识大全 创建最简单物化视图

Oracle物化视图:创建最简单物化视图  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  物化视图

知识大全 SQL入门:创建视图

SQL入门:创建视图  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  如视图中所讨论的视图提供在一

知识大全 Oracle多表创建的视图insert解决方法

Oracle多表创建的视图insert解决方法  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  单

知识大全 orale数据库如何利用sql语句创建视图的一般性使用方法

  SQLCREATEVIEW语句什么是视图?在SQL中视图是基于SQL语句的结果集的可视化的表  视图包含行和列就像一个真实的表视图中的字段就是来自一个或多个数据库教程中的真实的表中的字段我们可以向

知识大全 透视图开发[1]

基于Eclipse的工具开发:透视图开发[1]  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!&nb

知识大全 可更新的视图(1)

SQL实战新手入门:可更新的视图(1)  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  可更新的视

三视图的三等关系有哪些?

  1主,左视图高平齐2主,俯视图长对正3俯,左视图宽相等。

三视图的三等关系有哪些?

  1主,左视图高平齐2主,俯视图长对正3俯,左视图宽相等。

视图与物体的方位关系是什么?

  1主视图反映物体的上下和左右,2俯视图反映物体的左右和前后,3左视图反映物体的上下和前后

视图与物体的方位关系是什么?

  1主视图反映物体的上下和左右,2俯视图反映物体的左右和前后,3左视图反映物体的上下和前后