精华内容
下载资源
问答
  • MySQL 修改视图

    2020-03-14 09:19:21
    修改视图是指修改 MySQL 数据库中存在的视图,当基本表的某些字段发生变化时,可以通过修改视图来保持与基本表的一致性。 基本语法 可以使用 ALTER VIEW 语句来对已有的视图进行修改。 语法格式如下: ALTER VIEW &...

    修改视图是指修改 MySQL 数据库中存在的视图,当基本表的某些字段发生变化时,可以通过修改视图来保持与基本表的一致性。

    基本语法

    可以使用 ALTER VIEW 语句来对已有的视图进行修改。

    语法格式如下:

    ALTER VIEW <视图名> AS <SELECT语句>
    

    语法说明如下:

    	<视图名>:指定视图的名称。该名称在数据库中必须是唯一的,不能与其他表或视图同名。
    	
    	<SELECT 语句>:指定创建视图的 SELECT 语句,可用于查询多个基础表或源视图。
    

    修改视图的定义,除了可以通过 ALTER VIEW 外,也可以使用 DROP VIEW 语句先删除视图,再使用 CREATE VIEW 语句来实现。

    修改视图内容

    视图是一个虚拟表,实际的数据来自于基本表,所以通过插入、修改和删除操作更新视图中的数据,实质上是在更新视图所引用的基本表的数据。

    注意:对视图的修改就是对基本表的修改,因此在修改时,要满足基本表的数据定义。

    某些视图是可更新的。也就是说,可以使用 UPDATE、DELETE 或 INSERT 等语句更新基本表的内容。对于可更新的视图,视图中的行和基本表的行之间必须具有一对一的关系

    还有一些特定的其他结构,这些结构会使得视图不可更新。更具体地讲,如果视图包含以下结构中的任何一种,它就是不可更新的

    	聚合函数 SUM()、MIN()、MAX()、COUNT() 等。
    	
    	DISTINCT 关键字。
    	
    	GROUP BY 子句。
    	
    	HAVING 子句。
    	
    	UNION 或 UNION ALL 运算符。
    	
    	位于选择列表中的子查询。
    	
    	FROM 子句中的不可更新视图或包含多个表。
    	
    	WHERE 子句中的子查询,引用 FROM 子句中的表。
    	
    	ALGORITHM 选项为 TEMPTABLE的时候。
    

    使用 ALTER 语句修改视图 view_students_info,输入的 SQL 语句和执行结果如下所示。

    mysql> ALTER VIEW view_students_info
        -> AS SELECT id,name,age
        -> FROM tb_students_info;
    Query OK, 0 rows affected (0.07 sec)
    mysql> DESC view_students_info;
    +-------+-------------+------+-----+---------+-------+
    | Field | Type        | Null | Key | Default | Extra |
    +-------+-------------+------+-----+---------+-------+
    | id    | int(11)     | NO   |     | 0       |       |
    | name  | varchar(45) | YES  |     | NULL    |       |
    | age   | int(11)     | YES  |     | NULL    |       |
    +-------+-------------+------+-----+---------+-------+
    3 rows in set (0.03 sec)
    

    用户可以通过视图来插入、更新、删除表中的数据,因为视图是一个虚拟的表,没有数据。通过视图更新时转到基本表上进行更新,如果对视图增加或删除记录,实际上是对基本表增加或删除记录。

    查看视图 view_students_info 的数据内容,如下所示。

    mysql> SELECT * FROM view_students_info;
    +----+--------+------+
    | id | name   | age  |
    +----+--------+------+
    |  1 | Dany   |   24 |
    |  2 | Green  |   23 |
    |  3 | Henry  |   23 |
    |  4 | Jane   |   22 |
    |  5 | Jim    |   24 |
    |  6 | John   |   21 |
    |  7 | Lily   |   22 |
    |  8 | Susan  |   23 |
    |  9 | Thomas |   22 |
    | 10 | Tom    |   23 |
    +----+--------+------+
    10 rows in set (0.00 sec)
    

    使用 UPDATE 语句更新视图 view_students_info,输入的 SQL 语句和执行结果如下所示。

    mysql> UPDATE view_students_info
        -> SET age=25 WHERE id=1;
    Query OK, 0 rows affected (0.24 sec)
    Rows matched: 1  Changed: 0  Warnings: 0
    mysql> SELECT * FROM view_students_info;
    +----+--------+------+
    | id | name   | age  |
    +----+--------+------+
    |  1 | Dany   |   25 |
    |  2 | Green  |   23 |
    |  3 | Henry  |   23 |
    |  4 | Jane   |   22 |
    |  5 | Jim    |   24 |
    |  6 | John   |   21 |
    |  7 | Lily   |   22 |
    |  8 | Susan  |   23 |
    |  9 | Thomas |   22 |
    | 10 | Tom    |   23 |
    +----+--------+------+
    10 rows in set (0.00 sec)
    

    查看基本表 tb_students_info 和视图 v_students_info 的内容,如下所示。

    mysql> SELECT * FROM tb_students_info;
    +----+--------+---------+------+------+--------+------------+
    | id | name   | dept_id | age  | sex  | height | login_date |
    +----+--------+---------+------+------+--------+------------+
    |  1 | Dany   |       1 |   25 | F    |    160 | 2015-09-10 |
    |  2 | Green  |       3 |   23 | F    |    158 | 2016-10-22 |
    |  3 | Henry  |       2 |   23 | M    |    185 | 2015-05-31 |
    |  4 | Jane   |       1 |   22 | F    |    162 | 2016-12-20 |
    |  5 | Jim    |       1 |   24 | M    |    175 | 2016-01-15 |
    |  6 | John   |       2 |   21 | M    |    172 | 2015-11-11 |
    |  7 | Lily   |       6 |   22 | F    |    165 | 2016-02-26 |
    |  8 | Susan  |       4 |   23 | F    |    170 | 2015-10-01 |
    |  9 | Thomas |       3 |   22 | M    |    178 | 2016-06-07 |
    | 10 | Tom    |       4 |   23 | M    |    165 | 2016-08-05 |
    +----+--------+---------+------+------+--------+------------+
    10 rows in set (0.00 sec)
    
    mysql> SELECT * FROM v_students_info;
    +------+--------+------+-------+-------+----------+------------+
    | s_id | s_name | d_id | s_age | s_sex | s_height | s_date     |
    +------+--------+------+-------+-------+----------+------------+
    |    1 | Dany   |    1 |    25 | F     |      160 | 2015-09-10 |
    |    2 | Green  |    3 |    23 | F     |      158 | 2016-10-22 |
    |    3 | Henry  |    2 |    23 | M     |      185 | 2015-05-31 |
    |    4 | Jane   |    1 |    22 | F     |      162 | 2016-12-20 |
    |    5 | Jim    |    1 |    24 | M     |      175 | 2016-01-15 |
    |    6 | John   |    2 |    21 | M     |      172 | 2015-11-11 |
    |    7 | Lily   |    6 |    22 | F     |      165 | 2016-02-26 |
    |    8 | Susan  |    4 |    23 | F     |      170 | 2015-10-01 |
    |    9 | Thomas |    3 |    22 | M     |      178 | 2016-06-07 |
    |   10 | Tom    |    4 |    23 | M     |      165 | 2016-08-05 |
    +------+--------+------+-------+-------+----------+------------+
    10 rows in set (0.00 sec)
    

    修改视图名称

    修改视图的名称可以先将视图删除,然后按照相同的定义语句进行视图的创建,并命名为新的视图名称。

    展开全文
  • 修改视图,是修改视图的名称、以及SQL语句等内容 更新视图,是指通过视图去做insert、update、delete等操作,因为视图是一个虚表,其中并没有数据,我们这样去更新视图都是转换成对具体的表的操作的。当然啊,更新...

    我们接着上一讲继续啊,上一讲我们说了什么是视图,如何创建视图,如何删除视图,这一节我们来说一下如何修改、更新视图。

    当然啊,说之前我先来说说这两个操作的区别,不要以为它们是一样的啊

    修改视图,是修改视图的名称、以及SQL语句等内容

    更新视图,是指通过视图去做insert、update、delete等操作,因为视图是一个虚表,其中并没有数据,我们这样去更新视图都是转换成对具体的表的操作的。当然啊,更新视图的时候,只能更新权限范围内的数据,超过这个范围就不能更新了。

    修改视图

    修改视图我们同样是通过命令,这里我给出来

    CREATE OR REPLACE ( ALGORITHM =( UNDEFINED 或 MERGE 或 TEMPTABLE ))
    VIEW 视图名 ( 属性清单 )
    AS SELECT 语句
    ( WITH ( CASCADED 或 LOCAL ) CHECK OPTION );

    其实和创建差不多,这个也能用来创建,因为是 CREATE OR REPLACE,然后我们现在来通过这个命令去创建一个视图。

    然后我们来刷新一下视图

    我们查看一下这个视图

    OK的啊,然后我们再来修改一下这个视图,还是用这个命令,就是换一下这个SQL语句。

    再来运行一下

    OK的啊,接着我们再来使用另外一个修改命令

    ALTER ( ALGORITHM =( UNDEFINED 或 MERGE 或 TEMPTABLE ))
    VIEW 视图名 ( 属性清单 )
    AS SELECT 语句
    ( WITH ( CASCADED 或 LOCAL ) CHECK OPTION );

    实际上也就是把 CREATE OR REPLACE 修改成 ALTER了,我们再来修改一下 lemon234_1 这个视图

    接着我们来查看一下新修改的这个视图

    摩玛带啊(西安话),其实修改我们是常用的,然后我们来说这个更新视图。

    更新视图

    更新视图,我再文章最前面说了啊,这个到最后就是转换成对实体表的操作,所以我们来尝试一下。

    首先先查看一下我们的 lemon1234_1的这个视图。

    然后我们将张三的名字给他弄成李四。

    这里需要注意,你要用视图里面的名字啊,别弄成name啊,千万要记住!!!

    然后我们再来看一下视图。

    可以看到啊,我们将这个张三的名字修改成李四了,然后我们再来看看这个实际的表。

    也是OK的啊,也被修改掉了。这就证实了我前面说的,实际上是对具体的表进行操作。

    我们再来将李四的性别也修改一下,现在不是 1 吗,我们给他通过视图修改成 2 ,我们再来试一下。

    可以看到啊,报错了,原因是找不到这个sex,这也就是说明了限制,虽然实际的表中存在,但是我们没有办法去修改,因为视图中不存在。

    当然啊,我们再来试试这个插入和删除,先来说插入,直接上图。

    我们当时弄这个 t_student 表的时候啊,我们的这个id主键是自动递增的,但是到了这个视图,发现这个用不了了,报错了,这也就是说,表是表,视图是视图。所以我们给定一个id,我们再来添加。

    查看一下

    当然啦,其他的字段肯定是空,道理和这个UPDATE的时候是一样的,视图中不存在,所以没有办法添加。

    然后是删除,我们再将陈胖这条数据删除了。

    再来查看一下视图和表

     

    很好啊,大家多多练习一下,先讲到这里,明天开始弄触发器。

    有不懂的地方可以问我,加我QQ即可:2100363119

    展开全文
  • Oracle数据库 修改视图或表影响

    千次阅读 2019-05-19 16:56:47
    1、视图是实际表的虚拟表或子集,当修改实体表数据时,视图数据会被修改,这个我想大家都能想明白。 2、那么视图表数据修改了,实际表的数据会不会被修改呢?实测代码如下: –修改表数据,查看视图表数据是否变化?...

    为了防止自己遗忘,特此记录,希望对大家也有所帮助:

    1、视图是实际表的虚拟表或子集,当修改实体表数据时,视图数据会被修改,这个我想大家都能想明白。

    2、那么视图表数据修改了,实际表的数据会不会被修改呢?实测代码如下:

    –修改表数据,查看视图表数据是否变化?
    update student set name =‘yang01’ where id = 1;
    在这里插入图片描述
    select * from view_student;
    在这里插入图片描述
    答案是:视图被修改

    –修改视图数据,查看表的数据是否被改变?
    update view_student set name = ‘zhangsan’ where id = 2;
    在这里插入图片描述
    select * from student;
    在这里插入图片描述
    答案是:实际表被修改

    展开全文
  • 一、视图 1、视图:view。视图是一种有结构(有行有列的二维表结构)但没结果(结构中不真实存放数据)的虚拟表。虚拟表的结构来源不是自己定义的,而是从对应的基表中产生(视图的数据来源) 注:虚拟表的数据也...

    一、视图

    1、视图:view。视图是一种有结构(有行有列的二维表结构)但没结果(结构中不真实存放数据)的虚拟表。虚拟表的结构来源不是自己定义的,而是从对应的基表中产生(视图的数据来源)

    注:虚拟表的数据也不是从自己来的

    二、创建视图

    1、基本语法

        -- 创建视图
        -- select语句:可以是 普通查询|连接查询|联合查询|子查询
        create view 视图名字 as select 语句;

    (1)单表视图:基表只有一个

    (2)多表视图:基表来源至少是两个

    注:多表视图(基表有多张)的字段名不能重复。可以进行别名命名

        -- 创建视图:单表视图
        create view my_v1 as
        select * from my_student;
    
        -- 创建视图:多表视图
        create view my_v2 as
        select * from my_student as s left join my_class c on c.id = s.c_id;
        -- 报错:Duplicate column name 'id',即 id重复(表中不允许出现同名字段)
    
        -- 多表视图(基表有多张)的字段名不能重复(可以进行别名命名)
        
        create view my_v2 as
        select s.*, c.name as c_name, c.room from my_student as s
        left join my_class c on c.id = s.c_id;

    2、视图一旦创建,系统会在视图对应的数据库文件夹下创建一个对应的结构文件xxx.frm(视图不影响基表的存在,视图只是基于基表出现的东西)

    注:视图名和表名不能重复。因为产生的都是xxx.frm结构文件

    三、查看视图

    1、视图是一张虚拟表,表的所有查看方式都适用于视图

        -- 查看所有视图/表
        show tables;
        show tables like '视图名的模糊查询';
        show views;    -- 报错
        
        -- 查看视图结构
        desc 视图名;
        
        -- 查看视图创建语句
        show create table 视图名 [\G];
        show create view 视图名 [\G];

    四、使用视图

    1、使用视图主要是为了查询数据,将视图当做表一样查询即可(视图不保存结果,但可以从基表拿到数据)

        -- 使用视图,查询数据
        -- 视图不保存结果,但可以从基表拿到数据
        select * from my_v1;

    2、视图的执行,其本质就是执行封装的select语句

    五、修改视图

    1、视图本身不可修改,但视图的来源是可以修改的。修改视图,就是修改视图本身的来源语句(select语句)

    2、基本语法

        -- 修改视图
        alter view 视图名 as 新的select语句;
        -- 创建视图
        create view my_v3 as
        select * from my_student;
    
        -- 查看视图结构
        desc my_v3;
    
        -- 修改视图
        alter view my_v3 as
        select * from my_class;
    
        -- 查看视图结构
        desc my_v3; 

    六、删除视图

    1、基本语法

        -- 删除视图
        drop view 视图名字;
        -- 删除视图
        drop view my_v3;
        drop table my_v3;    -- 报错
        
        -- 表可以存数据,视图不存数据
        -- 所以,删除视图是只删除结构,而删除表table会找到table删除表中的数据
        -- 但实际上没有my_v3这张表来存储数据

    2、视图可以随意删除,因为视图没有数据。但建议不要这样做,因为创建视图的sql语句可能没有保存

    七、视图的意义

    1、视图可以节省sql语句。将一条复杂的查询语句使用视图进行保存,以后可以直接对视图进行操作

    2、数据安全。视图操作主要是针对查询的,如果对视图结构进行处理(删除),不会影响基表数据,相对安全

    3、视图往往是在大项目中使用,而且是多系统使用。可以对外提供有用的数据,但隐藏了关键(无用)的数据,数据安全

    4、视图可以对外提供友好型。不同的视图提供不同的数据,对外好像专门设计

    5、视图可以更好(容易)的进行权限控制

    注:基表的数据往往要极力隐藏,甚至都不让别人知道表的名字和结构

    八、视图数据操作

    1、视图可以进行数据写操作,但是有很多限制。一般只会给查看视图的权限,不会给增删改视图的权限

    2、对视图的操作会影响基表,基表的数据会发生改变

    3、新增数据

    (1)新增数据就是直接对视图进行数据新增

    注:给视图新增数据意味着不知道基表,不知道基表就没办法操作基表。所以,所有的操作都是对视图进行的操作

    (2)多表视图不能新增数据(不能给一个有连接的视图(多表视图)插入数据)

    (3)可以向单表视图插入数据。但是视图中包含的字段必须有基表中所有不能为空(或者没有默认值)的字段

    (4)视图是可以向基表插入数据的(对视图的操作会影响基表,基表的数据会发生改变)

        -- 单表视图插入数据
        -- 对视图的操作会影响基表,基表的数据会发生改变
        insert into 视图名 values ('值1', '值2', ... );
        -- 创建视图:单表视图
        create view my_v4 as
        select * from my_class;
    
        -- 查看数据
        select * from my_class;
        select * from my_v4;
    
        -- 单表视图插入数据
        -- 视图中包含的字段必须有基表中所有不能为空(或者没有默认值)的字段
        -- 对视图的操作影响了基表,基表数据发生了改变
        insert into my_v4 values (666, '6班', 'B606');
    
        -- 查看数据
        select * from my_v4;
        select * from my_class;

    4、删除数据

    (1)多表视图不能删除数据(此处的多表视图指的是连接) -- 试一下多表数据源(笛卡尔积)、联合 可不可以删除???

    eg:学生表和班级表连成一个视图,如果删除学生时把班级也删除了,就会造成所有的学生都没有匹配的班级了 -- 数据不可控

        -- 创建多表视图(连接)
        create view my_v5 as
        select s.*, c.name as c_name, c.room from my_student as s
        left join my_class c on c.id = s.c_id;
    
        -- 查看视图数据
        select * from my_v5;
    
        -- 多表视图删除数据
        delete from my_v5 where id = 1;
        -- 报错:Can not delete from join view 'mydatabase.my_v5'

    (2)单表视图可以删除数据

        -- 单表视图删除数据
        -- 对视图的操作会影响基表,基表的数据会发生改变
        delete from 视图名 [where条件];
        -- 创建视图:单表视图
        create view my_v6 as
        select * from my_class;
    
        -- 查看数据
        select * from my_class;
        select * from my_v6;
    
        -- 单表视图删除数据
        -- 对视图的操作影响了基表,基表数据发生了改变
        delete from my_v6 where id = 1;
    
        -- 查看数据
        select * from my_v6;
        select * from my_class;

    5、更新数据

    (1)理论上,不论单表视图还是多表视图,都可以更新数据

        -- 单表视图|多表视图 更新数据
        -- 对视图的操作会影响基表,基表的数据会发生改变
        update 视图名 set 字段名 = 值 [where条件]
        -- 创建多表视图
        create view my_v7 as
        select s.*, c.name as c_name, c.room from my_student as s
        left join my_class c on c.id = s.c_id
    
        -- 查看数据
        select * from my_v7;
    
        -- 多表视图更新数据
        -- 对视图的操作影响了基表,基表数据发生了改变
        update my_v7 set c_id = 333 where id = 3;
    
        -- 查看数据
        select * from my_v7;
        select * from my_student;
        select * from my_class;

    (2)更新限制:with check option。在创建视图的时候,如果对某个字段有限制,那么在对视图进行数据更新操作时,系统会进行验证。要保证更新之后,数据依然可以被视图查询出来(更新后的数据值依旧满足创建视图时对字段的限制),否则不让更新

        -- 更新限制(with check option)
        -- 创建视图,使用更新限制
        create view 视图名 as
        select * / 字段列表 from 表名 where条件1 with check option;
    
        -- 更新数据
        -- 更新的字段值必须满足创建视图时设定是where条件1,否则报错
        update 视图名 set 字段名 = 值 [where条件];
        -- 更新限制(with check option)
        -- 创建视图,使用更新限制
        -- where age>30:视图的数据来源都是age>30的数据
        -- with check option:视图更新的时候,不能将已经得到的age>30的数据改成age<=30的数据
        create view my_v8 as
        select * from my_student where age > 30 with check option;
    
        -- 查看数据
        select * from my_v8;
    
        -- 将视图可以查到的数据改成age<30的数据
        update my_v8 set age = 29 where id = 1;
        -- 报错:CHECK OPTION failed 'mydatabase.my_v8'
    
        -- 对视图的操作影响了基表,基表数据发生了改变
        update my_v8 set age = 36 where id = 1;    -- 修改成功
        -- 针对视图中的数据进行更新。视图中没有id=111的数据,所以修改无效
        update my_v8 set age = 36 where id = 111;
    
        -- 查看数据
        select * from my_v8;

    6、单表视图和多表视图的操作区别

    (1)单表视图:可以插入数据,可以删除数据,可以更新数据

    (2)多表视图:不能插入数据,不能删除数据,可以更新数据

    九、视图算法

    1、视图算法:系统对视图以及外部查询视图的select语句的一种解析方式

    2、视图算法分为三种

    (1)undefined:未定义(默认)。这不是一种实际使用的算法,是一种推卸责任的算法。告诉系统,视图没有定义算法,系统自己看着办

    (2)temptable:临时表算法。系统应该先执行视图的select语句,后执行外部查询语句(将第一次查询到的数据拿到内存中,再对内存进行操作,操作了两次。因为拿到内存的数据也不一定全部都是需要的数据)

    (3)merge:合并算法。系统应该先将视图对应的select语句与外部查询视图的select语句进行合并,然后执行 -- 效率高(常态)

    注:

    a). 执行一次查询的效率比执行两次查询的效率高

    b). 系统经常选择merge,undefined时也会经常选择merge

    3、算法指定:在创建视图的时候

        -- 算法指定:在创建视图的时候
        create algorithm = 指定算法 view 视图名 as select 语句;
        -- 获取每个班级中最高的一个学生
        create view my_v9 as 
        select * from my_student order by height desc;
    
        -- 查询数据
        -- 下面两句sql效果一样,结果都是错误的
        select * from my_v9 group by c_id;
        select * from my_student group by c_id order by height desc;
    
        -- 指定算法为临时表temptable
        create algorithm = temptable view my_v10 as
        select * from my_student order by height desc;
    
        -- 查看视图创建语句
        show create view my_v10\G;
        
        -- 查看数据
        -- group by c_id:group by本身也带有排序效果,默认是升序asc。此处默认按照c_id升序排序
        select * from my_v10 group by c_id;    -- 结果正确
        -- 等价于
        select * from (select * from my_student order by height desc) as a group by a.c_id;

    4、视图算法选择:如果视图的select语句中会包含一个查询子句(5子句),而且很有可能顺序比外部的查询语句要靠后,此时一定要使用临时表算法temptable。其他情况可以不用指定,默认即可

     

    展开全文
  • 批量修改视图的定义

    千次阅读 2010-05-07 19:41:00
    在数据库迁移的过程中,可能要更改一些user_objects的DDL,但是这些DDL存在着规律,而且量很大,再说了搞IT的都是些懒人,能批量搞定,肯定不会去一个一个修改这些objects的DDL。  今天我就遇到了这样的问题,...
  • 方法1: 修改完楼层名称后,其对应的所有视图(平面视图,天花板视图)都自动修改名称,保持与楼层名一致。 方法2: 改完楼层名称后,弹出一个对话框,询问是否要修改其对应的所有视图的名称? 用户可以自己选择
  • mac中navicat无法修改视图 本人使用的是mac版navicat premium 12 视图的简单介绍 创建视图的原因是简化查询语句,使查询语句更精简,易懂。但是视图对于查询效率本身不会有什么提高,而且视图查询出来的数据并不会...
  • 视图

    2014-09-20 01:23:20
    视图:也称
  • <br />1、必须有权限 2、单表视图直接改 3、多表可在视图中定义 instead of 触发器. 4、对由多表连接成的视图修改数据时,不能同时影响一个以上的基表,也不能删除视图中的数据 5、对...
  • hive修改表/视图的注释

    万次阅读 2017-02-25 16:31:44
    hive修改表/视图的注释
  • SQL修改数据库名字、表名字、字段名字 【资料来自网络】 修改数据库名字:alter database 原数据库名称 modify name=新数据库名称 添加字段: ALTER TABLE SupplierADD LoginPassword varchar(20) 不需要...
  • 作者: 叶雄进 , Autodesk ADN ...在其中可以修改构件在当前视图下的颜色,线型,填充图案,填充图案颜色等。 Revit开放了接口来支持编程实现修改投影面上对象的线框颜色,线型,线宽;以及剖切面上
  • MySQL视图

    2019-03-03 20:21:42
    MySQL视图 什么是MySQL视图视图关键字视图作用创建视图视图查看修改视图删除视图视图数据增删改视图算法 什么是MySQL视图 视图:视图是一张虚拟表,存在表结构,但是没有数据。 视图关键字 视图关键字:view 视图...
  • 第3章 表和视图的创建修改 数据库实际上是数据表的集合。在关系数据库中,数据库通常包含多个数据表,数据库中的数据信息都是存储在数据表当中的。数据表是对数据进行存储和操作的一种逻辑结构,对于用户而言,一个...
  • 第3章 表和视图的创建修改 数据库实际上是数据表的集合。在关系数据库中,数据库通常包含多个数据表,数据库中的数据信息都是存储在数据表当中的。数据表是对数据进行存储和操作的一种逻辑结构,对于用户而言,一...
  • 修改windows资源管理器默认打开视图

    千次阅读 2014-04-07 13:43:11
    相信很多朋友都不习惯,下面介绍修改默认打开相关视图的方法:    如果资源管理器没有打开,那么同时按住Shift键的,右键点击任务栏上的资源管理器图标,选择“属性”。  如果资源管理器是打开的,则右键点击...
  • ORACLE-视图

    2020-07-11 18:19:31
    我们为什么需要视图? 创建视图 修改视图 删除视图
  • Oracle物化视图与物化视图日志

    万次阅读 多人点赞 2019-04-02 21:43:30
    文章目录物化视图物化视图与普通视图的区别创建一个存放person的表创建一个存放person的address的表初始化数据创建物化视图的语句1.build [immediate|deferred]2.refresh [fast|complete|force] 视图刷新的方式:3.MV...
  • ABAP 视图

    千次阅读 2019-05-29 17:54:28
    视图视图支持几核查询一个或多个表里存在的数据的功能。在ABAP数据字典中激活视图会在数据库中生产次视图,访问此数据库视图需要用数据库接口进行访问。只是查询必要的表和字段不需要查询没必要的字段,因此可以...
  • PostgreSQL 视图

    万次阅读 2018-05-22 17:46:14
    详细了解视图、函数(存储过程)、触发器、别名视图篇一、视图定义 视图是从一个或者多个表中导出的,它的行为与表非常相似,但是视图是一个虚拟表。在视图中,用户可以使用select查询语句查询数据、insert插入数据...
  • MySQL数据库中的视图

    2019-05-08 15:24:54
    MySQL数据库中的视图 视图是基于某个查询结果的虚表。 其作用就是方便用户对数据的操作。 一,使用SQL语句创建视图 ...create view 视图名字 as select 语句; 例 二,修改视图 语法:alter view...
  • oracle视图

    2015-01-11 14:13:07
    oracle 视图的作用,oracle视图的介绍
  • Oracle视图

    千次阅读 2015-11-27 12:03:06
    oracle视图 基本介绍  视图是一个虚拟表,其内容由查询定义。同真实的表一样,视图包含一系列带有名称的列和行数据。但是,视图并不在数据库中以存储的数据值形式存在。行和列数据来自由定义视图的查询所引用的...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 134,837
精华内容 53,934
关键字:

修改视图名字