精华内容
下载资源
问答
  • 数据库视图的构建 分析 删除修改 视图是数据库查询的一层封装
  •  修复Domino数据库视图索引的两种方法  解答  第一种方法:  1、在控制台上运行命令:load fixup 数据库名  2、在控制台上运行命令:load updall -R 数据库名  第二种方法:  1、对要修复的数据库新建...
  • 实验六 视图和索引 实验目的 (1)了解视图的重要性 (2)掌握视图的建立 (3)掌握视图的使用 (4)掌握索引的使用方法 (5)掌握索引的概念及分类
  • 数据库视图的创建与使用ppt,需要的童鞋课下载
  • VC 动态创建视图,使用CREATE VIEW语句动态创建数据库视图,具体请下载本源码测试,需要提前准备好数据库。需要导入一个ADO动态链接库msado15.dll,该动态库位于系统盘下的“Program Files\Common Files\System\ado\...
  • 在分析了面向对象数据库(OODB)及数据库视图功能特征的基础上,讨论了面向对象数据库视图的实现方法,在OODB中实现了基于对象查询的数据库视图的部分功能,并研制了一个档案管理系统加以验证。
  • mysql数据库视图

    2019-08-28 19:46:57
    mysql数据库视图和储存过程 先说说数据库视图, 视图,注意它是一张 虚拟表,是一张仅存在于咱自己概念上的表,即数据库中看不到但只要你创建他就存在的一张表, 是你自定义的一个表或多个表中导出来的表,作用和...

    mysql数据库视图和储存过程

    先说说数据库视图,
    视图,注意它是一张 虚拟表,是一张仅存在于咱自己概念上的表,即数据库中看不到但只要你创建他就存在的一张表,
    是你自定义的一个表或多个表中导出来的表,作用和真实表一样,包含一系列带有行和列的数据 视图中,用户可以使用SELECT语句查询数据,也可以使用INSERT,UPDATE,DELETE修改记录,视图可以使用户操作方便,并保障数据库系统安全

    优点及缺点

    优点:

    简单化,数据所见即所得

    安全性,用户只能查询或修改他们所能见到得到的数据

    逻辑独立性,可以屏蔽真实表结构变化带来的影响

    缺点:

    性能相对较差,简单的查询也会变得稍显复杂

    修改不方便,特变是复杂的聚合视图基本无法修改

    语法结构:

    { CREATE|REPLACE } [ALGORITHM = {UNDEFINED | MERGE | TEMPTABLE}]
    
    VIEW view_name [{column_list}]
    
    AS SELECT_STATEMENT
    
    [WITH [CASCADED | LOCAL |] CHECK OPTION]
    

    释义:
    CREATE|REPLACE : 【创建|替换已创建的】视图

    ALGORITHM : 视图算法

    1.UNDEFINED 系统自动选择算法
    2.MERGE使用的视图语句与视图定义合并起来
    3.TEMPTABLE 结果存入临时表,然后用临时表执行语句
    view_name : 视图名称

    column_list : 属性列

    SELECT_STATEMENT :SELECT语句

    [WITH [CASCADED | LOCAL |] CHECK OPTION] 表示视图在更新时保证在视图的权限范围内

    1.CASCADED 默认值 更新视图时要满足所有相关视图和表的条件,
    2.LOCAL表示更新视图时满足该视图本身定义的条件即可。

    示例表:
    在这里插入图片描述
    在这里插入图片描述
    创建视图示例:

    CREATE VIEW test_view_1 AS SELECT `name` FROM t_user;
    

    在这里插入图片描述
    查询视图:

    SELECT * FROM test_view_1;
    

    在这里插入图片描述
    在多表中创建视图:

    CREATE VIEW test_view_3 (username, userage, usersex) AS SELECT
    
    t_user.`name`,
    
    t_user_info.age,
    
    t_user_info.sex
    
    FROM
    
    t_user,
    
    t_user_info
    
    WHERE
    
    t_user.id = t_user_info.uid;
    

    在这里插入图片描述
    查询视图:

    SELECT * FROM test_view_3;
    

    在这里插入图片描述

    展开全文
  • 数据库视图的创建和使用,对视图的创建、修改和删除均可在可视化界面下操作
  • 数据库视图理解

    千次阅读 2019-01-11 17:36:36
    用比较官方的话来说:视图就是一张通过查询获取的虚拟表,视图中本身不存在数据,数据来自与视图对源表的映射作用,一张数据表可以根据不同的需要创建多个不同的视图 对此我的理解是:你可以将视图看做成此表的分身...

    什么是视图?

    用比较官方的话来说:视图就是一张通过查询获取的虚拟表,视图中本身不存在数据,数据来自与视图对源表的映射作用,一张数据表可以根据不同的需要创建多个不同的视图
    对此我的理解是:你可以将视图看做成此表的分身,这个分身你可以自如的修饰,你可以自己选择向外展示的数据,所以一般视图也是用在开发中有一些表结构是不希望过多的人去接触的,那你就可以把实体表映射为一个视图。这个时候别人要查,就直接让他们去查询你的视图
    上代码:简单视图的创建和引用

    比如创建一个user表的简单视图sql如下

    create or view 视图名 as select * from user
    

    那如果你想控制一下视图的内容:比如让此视图只有id为2的用户数据

    create or view 视图名 as select * from user where id = 2;
    
    视图使用就跟表的使用是一样的(分身嘛,你懂得)所以视图也可以增删改查 而且语句都跟正常对表的增删改查是一样的 只不过把表的名字改为上面你自己定义的视图名就可以了

    下面附上增删改sql

    -- 增
    insert into 视图名('参数') values('插入的值')
    --删
    delete from 视图名
    --改
    update 视图名 set name='王刚'  where id=2;
    -- 查
    select * from 视图名
    
    以上就是我对数据库视图的一点理解啦,请大家多多指点
    展开全文
  • 数据库视图的使用和原理

    万次阅读 多人点赞 2019-04-22 17:53:24
    视图的概述 视图是一个虚拟表,其查询的数据来自于视图定义时的 as select xx 查询语句。视图的列来自于一个表或多个表,所以视图不可以和表名重名。 数据多用作查询,一般不会通过视图去修改数据。 视图的作用 1....

    视图的概述

    视图是一个虚拟表,其查询的数据来自于视图定义时的 as select xx 查询语句。视图的列来自于一个表或多个表,所以视图不可以和表名重名。
    数据多用作查询,一般不会通过视图去修改数据。

    视图的作用

    1.视图能简化用户的操作
    我们可以为常用的sql语句创建一个视图,这样我们原来需要连多个表,现在操作一个表就好了。

    2.视图能够增加安全性
    我们可以给不同的用户定义不同的视图,屏蔽了底层的表结构,从而更好的保护了数据的安全性。降低了如sql注入的风险。

    3视图对重构数据库提供了一定程度的逻辑独立性
    数据的物理独立性是指用户的应用程序不依赖于数据库的物理结构。数据的逻辑独立性是指当数据库重构造时,如增加新的关系或对原有的关系增加新的字段,用户的应用程序不会受影响。

    视图的创建

    CREATE [OR REPLACE] [ALGORITHM = {UNDEFINED | MERGE | TEMPTABLE}]
        VIEW view_name [(column_list)]
        AS select_statement
        [WITH [CASCADED | LOCAL] CHECK OPTION]
    

    column_list子句,列出由逗号隔开的ID。column_list中的名称数目必须等于SELECT语句检索的列数。

    ALGORITHM可取三个值:MERGE、TEMPTABLE或UNDEFINED。如果没有ALGORITHM子句,默认算法是UNDEFINED(未定义的)。
    MERGE:直接合并结果集
    TEMPTABLE:创建临时表
    UNDEFINED:MySQL将选择所要使用的算法。如果可能,它倾向于MERGE而不是TEMPTABLE,这是因为MERGE通常更有效,而且如果使用了临时表,视图是不可更新的。

    WITH CHECK OPTION子句中,LOCAL和CASCADED关键字决定了检查测试的范围。LOCAL关键字对CHECK OPTION进行了限制,使其仅作用在定义的视图上,而CASCADED会嵌套的检查前面的视图,如果未给定任一关键字,默认值为CASCADED
    在这里插入图片描述
    如果去除option则可以更新,
    使用with check 必须保证更新之后的数据,依旧符合where 条件,能被检索出来。

    视图的更新操作限制

    视图一般只用来查询,如果是单表的话,也可以进行增删改。但是有如下限制。
    1.聚合函数(SUM(), MIN(), MAX(), COUNT()等)。2 2.DISTINCT
    3. GROUP BY
    4. 4 HAVING
    5. UNION或UNION ALL
    6. 位于选择列表中的子查询
    7.Join
    8.FROM子句中的不可更新视图
    9. WHERE子句中的子查询,引用FROM子句中的表。
    10. 仅引用文字值(在该情况下,没有要更新的基本表)。
    11. ALGORITHM = TEMPTABLE(使用临时表总会使视图成为不可更新的)。

    展开全文
  • 数据库视图简介与实例分析

    千次阅读 2018-12-26 16:20:10
     数据库视图是虚拟表或逻辑表,它被定义为具有连接的SQL SELECT查询语句。 视图是对若干张基本表的引用,一张虚表,查询语句执行的结果,不存储具体的数据(基本表数据发生了改变,视图也会跟着改变);   2....

    1.什么是视图

     数据库视图是虚拟表或逻辑表,它被定义为具有连接的SQL SELECT查询语句。

    视图是对若干张基本表的引用,一张虚表,查询语句执行的结果,不存储具体的数据(基本表数据发生了改变,视图也会跟着改变);

     

    2.视图的作用

    提高了重用性,就像一个函数。 方便操作,对于很复杂的sql查询,使用视图,可以变得简洁方便,提高性能;

    提高了安全性能。比如,对不同的用户,设定不同的视图,权限控制的时候,不希望用户访问表中某些含敏感信息的列;

    可以跟基本表一样,进行增删改查操作。(ps:一个简单的视图可以更新表中数据。基于具有连接,子查询等的复杂SELECT语句创建的视图无法更新。);

     

    3.一个简单的视图实例:创建视图

     现有三个表,users用户表,company公司表,user_company用户公司关联表

     

    联合查询,查询所有用户及其所属的公司信息

    select u.id,u.name,c.company_name,c.description from users u left join user_company uc on u.id=uc.uid left join company c on uc.cid=c.id;

    select u.id,u.name,c.company_name,c.description from users u left join user_company uc on u.id=uc.uid left join company c on uc.cid=c.id;

     

    创建视图view_user_company,查询所有用户及其所属的公司信息,sql代码如下

    DROP VIEW 
    IF EXISTS `view_user_company`;
    CREATE VIEW view_user_company AS(
        select u.id,u.name,c.company_name,c.description 
        from users u 
        left join user_company uc on u.id=uc.uid 
        left join company c on uc.cid=c.id
    );

    DROP VIEW 
    IF EXISTS `view_user_company`;
    CREATE VIEW view_user_company AS(
        select u.id,u.name,c.company_name,c.description 
        from users u 
        left join user_company uc on u.id=uc.uid 
        left join company c on uc.cid=c.id
    );

    此时,视图已经建立成功。

    4.简单视图实例二:视图的增删改查

    一个简单的视图可以更新表中数据。基于具有连接,子查询等的复杂SELECT语句创建的视图无法更新。

    1.查询视图view_user_company,此时查询所有用户及其所属的公司就很简洁了

    select * from view_user_company;

    select * from view_user_company;

    2.修改视图数据,将用户编号为1的用户修改姓名、所属的公司,跨表连接修改则会失败,如下

    update view_user_company set name='allen',company_name='google' where id=1;

    update view_user_company set name='allen',company_name='google' where id=1;

    因为不能在一张由多张关联表连接而成的视图上做同时修改两张表数据的操作;

    2.1如果只修改一张表的数据,且没有其它约束,是允许的,而且同时会更新基表,如下,更新用户编号为1的用户的姓名

    update view_user_company set name='allen' where id=1;

    update view_user_company set name='allen' where id=1;

    此时用户表同时更新编号为1的用户的姓名数据 

    同时,在一张由多张关联表连接而成的视图上做新增、删除两张表数据的操作,以下操作失败

    insert into view_user_company(name,company_name,description) values ('hellon','tencent','tencent是一家发展很棒的公司');

    delete from view_user_company where id=1;

     

     

    哪些操作可以在视图上进行呢?

    如果视图只有一张表的数据,且与其他表没有约束关系,则可以增删改查,我们新建一个用户表视图;

    DROP VIEW
    IF EXISTS `view_userinfo `

    create view view_userinfo as (
      select * from users
    );

    DROP VIEW
    IF EXISTS `view_userinfo `
    create view view_userinfo as (
      select * from users
    );

    进行增删改操作如下,此时操作成功

    select * from view_userinfo;

    insert into view_userinfo(name,password,address) values ('kally','123123','南京');

    update view_userinfo set name='linxi' where id=5;

    delete view_userinfo where id=5;

     

    删除整个视图:drop命令,此时基表并不会有任何影响;

    drop view 'view_user_company'

     

     

     

    注意:删除、修改操作时要小心,不小心就会修改了基表中的很多条数据

     

     

     

     

    展开全文
  • 数据库视图的用法

    千次阅读 2018-11-24 21:08:13
    视图是由SELECT语句组成的查询定义的虚拟表;同真实的表一样,视图的作用类似于筛选
  • 数据库视图的总结

    千次阅读 2018-05-25 11:22:30
    视图的概念VIEW ( 视 图 ) 是 一 个 或 多 个 表 的 部 分 数 据 , 它 可 以 像 表 一 样 进 行 CRUD 操 作 , 但 没 有 具 体 的 存 储 数 据 结 构 , 它 以 一 个 SELECTiä 句 的 形 式 存 在 数 据 库 中 。...
  • SQL Server 数据库 视图创建

    千次阅读 2019-08-14 16:32:05
    SQL Server 创建视图 ...从数据库系统内部来看,视图是由一张或多张表中的数据组成的,从数据库系统外部来看,视图就如同一张表一样,对表能够进行的一般操作都可以应用于视图。 例如查询,插入,修改,...
  • 数据库视图概念,优缺点及作用

    千次阅读 2019-05-10 14:47:02
    视图(子查询):是从一个或多个表导出的虚拟的表,其内容由查询定义。具有普通表的结构,但是不实现数据存储。 对视图的修改:单表视图一般用于查询和修改,会改变基本表的数据, 多表视图一般用于查询,不会改变...
  • 数据库视图管理工具

    千次阅读 2019-02-19 23:20:24
  • 视图是指计算机数据库中的视图,是一个虚拟表,其内容由查询定义。同真实的表一样,视图包含一系列带有名称的列和行数据。但是,视图并不在数据库中以存储的数据值集形式存在。行和列数据来自由定义视图的查询所引用...
  • 数据库视图

    2014-10-16 19:12:33
    描述数据库的视图,以及视图的注意,用法以及举例,更好的学习数据库视图
  • 数据库视图数据是否可以直接删除

    千次阅读 2021-03-25 09:47:36
    数据库视图数据是否可以直接删除 文章目录数据库视图数据是否可以直接删除一、视图是什么?二、视图数据删除1.多表构成视图数据删除2.单表视图数据删除总结 一、视图是什么? 视图(VIEW)也被称作虚表,即虚拟的表...
  • 本篇博客分享SQL语言视图操作--详细实践学习报告(以截图方式展示),大家多多捧场咯! 软件:Oracle SQL Developer 目录 1、学生-课程数据库 2、视图 ①定义视图 ②查询视图 ③更新视图视图的作用 1、...
  • 数据库视图的作用和优势

    千次阅读 2019-04-27 20:14:41
    既然视图在实际开发过程当中被广泛使用到,它到底有哪些作用和优势呢? 1、使数据简单化:可以将复杂的查询创建成视图,提供给他人使用,他人就不需要去理解其中复杂性的业务关系或逻辑关系。这样对视图的使用人员...
  • 数据库 视图和表

    千次阅读 2019-08-01 15:01:17
    数据库中表的概念很好理解,就是数据的一种组织存放形式。表中是包含真正的数据的。比如我有一张表如下 在磁盘中我可以找到表文件 用cat打开表文件的话会是乱码,包含了实际的数据 而视图。本质上是sql语句(或者...
  • 数据库 视图基础概念

    万次阅读 2019-01-19 11:06:12
    视图是从一个表或是多个表导出的表,视图与表不同,视图是一个虚表,即视图所对应的数据不进行实际存储,数据库中指存储视图的定义,在对视图的数据进行操作时,系统根据视图的定义去操作与视图相关联的基本表。...
  • 主要介绍了Django Admin后台添加数据库视图过程解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
  • 数据库视图和触发器

    2019-10-07 13:48:56
    4.视图: 是一个虚拟的表 有行有列有数据 视图中存的 查询语句 视图中的数据依赖于原数据 当查询的复杂度较大时,多字段,多关系,会导致查询混乱,不利于sql的编写和可读性 会影响sql的拼接,视图就是对查询结果...
  • SQL Server实验——数据库视图的定义与使用学生选课数据库的创建创建学生信息表student创建课程信息表course创建学生选课信息表sc插入相关信息视图的创建基本应用一、创建信息系(sdept=’IS’)学生信息的视图IS_...
  • 本文主要讲了通过系统数据库获取用户所有数据库中的视图、表、存储过程的方法,大家参考使用吧
  • 数据库 视图、索引的建立与查看

    千次阅读 2018-10-02 17:46:17
    视图建立(建立一张虚表) create view IS_Student AS select Sno,Sname,Sage  from Student where Sdept='IS'; 视图查看(视图是一张虚表 当普通表查询即可) select * from IS_Student; 可视化工具查看视图...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 481,205
精华内容 192,482
关键字:

数据库视图