Oracle视图基础详解与实例

视图是基于一张表或多张表或另外一个视图的逻辑表。视图不同于表,视图本身不包含任何数据。表是实际独立存在的实体,是用于存储

摘要:本篇笔记记录关于视图的一些认识、从概念、优缺点到应用以及注意事项。 

一:概念 

视图是基于一张表或多张表或另外一个视图的逻辑表。视图不同于表,视图本身不包含任何数据。表是实际独立存在的实体,是用于存储数据的基本结构。而视图只是一种定义,对应一个查询语句。视图的数据都来自于某些表,,这些表被称为基表。%ignore_a_1%中只在数据字典中存储对视图的定义。

二:优点 

1、为用户集中数据,简化用户的数据查询和处理。

2、屏蔽数据库的复杂性,用户不必了解数据库的复杂性。

3、简化用户权限的管理,只授予用户使用视图的权限。

4、可以提高数据访问的安全性,通过视图往往只可以访问数据库中表的特定部分,限制了用户访问表的全部行和列。

5、便于数据共享,多个用户不必都定义所需的数据。 

三:视图类别 1、简单视图

指基于单个表并且不包含函数或表达式的视图,在该视图上可以执行DML语句(即可执行增、删、改操作)。

2、复杂视图

指基于单个或者多个表或者包含函数、表达式或者分组数据的视图,在该视图上执行DML语句时必须要符合特定条件。注意:在定义复杂视图时必须为函数或表达式定义别名

3、连接视图

指基于多个表建立的视图,一般来说不会在该视图上执行INSERT、UPDATE、DELETE操作。

4、只读视图

指只允许进行SELECT操作的视图,在该视图时指定WITH READ ONLY选项。该视图上不能执行INSERT、UPDATE、DELETE操作。

5、check约束视图

WITH CHECK OPTION用于在视图上定义CHECK约束,即在该视图上执行INSERT或UPDATE操作时,数据必须符合查询结果. 

四:创建视图 1、基本语法

CREATE [OR REPLACE] VIEW  view_name  [(column_name1[,column_name2…
 AS
select_statement
[WITH CHECK OPTION]
[WITH READ ONLY]

2、参数说明

CREATE OR Repalce:用于创建和修改视图
WITH CHECK OPTION :用于创建限制数据访问的视图
WITH READ ONLY :用于创建只读视图

3、DML操作遵循的原则 

a)简单视图可以执行DML操作。

b)在视图出现下列情况时不可以通过视图修改基表数据或插入数据:

i、集合运算符(union,intersect,minus)

ii、DISTINCT关键字

iii、

v、子查询

vi、分组函数

vii、需要更新的列不是由“列表达式”定义的

vx、

linux

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至253000106@qq.com举报,一经查实,本站将立刻删除。

发布者:PHP中文网,转转请注明出处:https://www.chuangxiangniao.com/p/1872427.html

(0)
上一篇 2025年2月22日 08:57:20
下一篇 2025年2月22日 08:57:39

AD推荐 黄金广告位招租... 更多推荐

相关推荐

  • navicat连接数据库报错2005怎么办

    关于Navicat for MySQL 连接 MySQL 报2005 -Unknown MySQL server host ‘localhost’(0)错误的情况与解决方法 相关推荐:《Navicat for mysql使用图文教程》 20…

    2025年2月23日
    100
  • 用navicat怎么连接数据库

      navicat是强大的可视化数据库管理工具,navicat 是以直觉化的图形用户界面而建的,让你可以以安全并且简单的方式创建、组织、访问并共用信息。很多用户常常会使用navicat软件来管理本地的数据库文件,可是还是有很多用户不知道如何…

    2025年2月23日 数据库
    100
  • navicat数据库怎么建立

      navicat是一款非常好用的数据库图形界面管理软件。下面介绍如何使用Navicat创建mysql数据库的详细操作方法。 推荐教程:navicat使用教程 1、打开Navicat 2、鼠标右击mysql数据库连接,然后点击【打开连接】 …

    2025年2月23日 数据库
    100
  • navicat怎么把数据库导出

      Navicat是一套快速、可靠并价格相当便宜的数据库管理工具,专为简化数据库的管理及降低系统管理成本而设。下面我们就为大家介绍一下如何使用naviact把数据库导出。 推荐教程:navicat图文使用教程   使用Navicat连接到m…

    2025年2月23日 数据库
    100
  • navicat怎么连接数据库文件

    怎么使用Navicat连接数据库? 1、打开Navicat,点击左上角的‘Conection’按钮。 2、点击后,弹出菜单,我们要选择是哪种类型的数据库,根据你本地部署的数据库类型来选就行了,我这里选择MySql。 相关推荐:《Navica…

    2025年2月23日 数据库
    100
  • navicat怎么手动创建数据库

    navicat怎样创建数据库? 1、在服务中启动Mysql数据库 2、打开navicat 3、选中数据库连接“root”右键-》新建数据库 4、填写数据库名称,注意名称不要以数字开头,不要有中文、空格、特殊字符等 5、选择“字符集”,常用的…

    2025年2月23日 数据库
    100
  • navicat怎么连接数据库

    navicat连接数据库的方法是:1、打开navicat,点击【连接】,选择数据库种类;2、填写连接名,输入数据库密码;3、右键点击新建的连接,选择【新建数据库】;4、输入数据库名,选择字符集规则即可。 (推荐学习:mysql教程) 1、打…

    2025年2月23日 数据库
    100
  • 使用navicat克隆数据库的操作是什么

    工作中经常要使用到navicat,因此打算记录日常使用到的操作。 (学习视频分享:mysql视频教程) 一、操作步骤: 1、右击数据库,新建一个数据库 2、工具-》数据传输 3、一直点击下一步 相关推荐:navicat教程 以上就是使用na…

    2025年2月23日 数据库
    100
  • 使用navicat怎么导出整个数据库

    首先我们要明确一点,navicat在使用转存为SQL文件的方式导出数据库时,如果有外键那么就会导致导入时出错,因此我们需要使用数据传输的方式进行导出。 (学习视频分享:编程视频) 选成使用文件方式进行保存 高级选项需选成 这样导出的SQL脚…

    2025年2月23日 数据库
    100
  • php如果数组中没有数据库怎么解决

    php如果数组中没有数据库的解决办法:1、创建一个PHP示例文件;2、创建MySQL数据库和到达数据库的链接,通过“mysql_connect()”函数完成,其语法为“mysql_connect(servername,username,pa…

    2025年2月23日
    100

发表回复

登录后才能评论