欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

数据库对象的视图和索引

程序员文章站 2022-03-04 22:13:16
...

 

视图

 

  视图是从一个表或视图导出的表,也可以是从多个表或视图导出的表。视图是一个虚表,数据库不对视图所对应的数据进行实际存储,只存储视图的定义,对视图的数据进行操作时,只能将字段定义为视图,不能将具体的数据定义为视图

 

    为什么oracle需要视图;

                  1,视图可以优化IO,

                  2,屏蔽数据库的复杂性

                  3,简化操作

 

创建视图:oracle中的scott用户下的emp表建立视图

    根据emp表中的ename ,job创建视图,便于操作

 

create or replace view v_emp  as select ename from ,job emp;

--or replace表示如果对应名称的视图已经存在,则重建该视图,即把原来的视图销毁,再重建对应的视图。  

 


 

 定义上述的v_emp视图之后就可以直接查询这个视图,不需要对数据库中的底层数据进行操作了

 

  

 

 

select * from v-emp 该语句就会查出视图personView里面的所有字段

 

删除视图;

drop v_emp;

 

 

    视图可以对数据进行增删改查的操作

 

 

索引;

 

      快速的对数据进行操作

建立索引的作用是明显的,主要有:

1、快速存取数据

2、改善数据库性能,保证列值的唯一性

3、在使用order 

 

索引的创建:

将emp中的job字段创建索引;

create or replace index job_index on emp(job);--(单列索引)
--create index 创建索引
--job_index索引的名字
--on索引的关键词
--emp(job)将emp中的job字段创建索引

 

复合索引;

将emp中的job和sal字段创建索引

create index job_sal_index on emp(job,sal);--复合索引

 

查询视图;

select * from job_sal_index ;查询 job_sal_index 的字段

 

删除视图;

drop  index job_sal_index ;