数据库的视图和索引自学笔记

视图(View)是从一个或多个表(或视图)导出的表。视图与表(有时为与视图区别,也称表为基本表--Base Table)不同,视图是一个虚表,即视图所对应的数据不进行实际存储,数据库中只存储视图的定义,在对视图的数据进行操作时,系统根据视图的定义去操作与视图相关联的基本表。

 --创建视图--  

   create or replace view v_student as select * from student;  
        --从视图中检索数据--  
        select * from v_student;  
        --删除视图--  

  drop view v_student; 

对视图的修改:单表视图一般用于查询和修改,会改变基本表的数据, 多表视图一般用于查询,不会改变基本表的数据。

视图的缺点:缺点: 

索引不是给你使用的,而是数据库本身使用,索引只是为了让你的查询更加快速而已

索引的创建:

一、在表上创建一个简单的索引。允许使用重复的值:
CREATE INDEX index_name

ON table_name (column_name)

二、在表上创建一个唯一的索引。唯一的索引意味着两个行不能拥有相同的索引值。
CREATE UNIQUE INDEX index_name

ON table_name (column_name)

注意点:

1、索引不要与表存放在同一个表空间内; 

2、一个表的索引不要过多;

3、对于大表而且使用频繁的表,在生产时最好不要去加索引; 

如果对大表进行索引,取出的数据大于总量的5%至10%,使用索引扫描会效率下降很多。如果通过索引,取出数据量为总量的50%以上,这个时候还不如全表扫描来得快。 

4、数据量小的表,使用不频繁的不要单独另建立索引;

5、在查询条件中几个条件一起使用的,适合建立组合索引,否则不要建立组合索引,当单独引用非第一字段时将发生全表扫描; 
在Oracle9i之前,只有在使用到索引的前导索引时才可以使用组合索引

6,在查询的时候,where条件不要对索引的列做处理,而要对后面的条件字段做处理。否则用不上这个列上的索引。 



  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值