ITPub博客

首页 > 数据库 > Oracle > Oracle索引、视图

Oracle索引、视图

Oracle 作者:ayu2007126813 时间:2013-12-08 12:35:26 0 删除 编辑

--创建索引

--1.自动:当表上定义一个 primary key 或者 unique 束缚条件时,数据库自动创建一个对应的全部

--2.足动:用户可以或许足动创建索引以减速查询


--足动为表 tb_student 的 name 字段上创建索引
create index index_tb_student_name
on tb_student(name);

select * from tb_student where name = "Jack";

 

--建议:
--在经常查询的字段上里创建索引,
--不需要在全部字段上里成立索引
--(果为oracle需要对索引进止额中的维护,索引应用久了会发生索引碎片,而影响查询 成绩)
--假如一张表字段很少,不建议成立索引

 

--视图的好处
--1.可以或许限制对数据的拜候
--2.可以或许使复杂的查询变得简单
--3.提供数据的自力性
--4.提供了对不异数据的不同表示

select * from scott.emp;


创建视图 ORA-01031: 权限不敷
视图就是一种虚拟的表,为了便当把各种表所需要的字段与出来创建的一张新的虚拟表。视图的增删改需要触收器的合营。
假如只是查找同一筹划中的表来创建视图,则只需要该用户有create view的权限便可创建。
可是假如创建的视图触及到要查询其余筹划中的表,这时我们就需要select any table的权限了。

授权命令:
cmd
cmd
第一步:
sqlplus "/as sysdba
第二步:
grant select any table,create view to songlitao;


--创建简单的视图(一张表查询)
create view vi_emp
as
select empno 编号,ename 姓名,job 职位,sal 薪水,comm 奖金,deptno 部分
from scott.emp;

--查看简单视图
select * from vi_emp;

 

--创建复杂视图(两张表查询)
create view vi_emp2
as
select e.ename 姓名,e.job 职位,e.sal 薪水, e.comm 奖金,d.deptno 部分
from scott.emp e,scott.dept d
where e.deptno=d.deptno;

select * from vi_emp2;


<!-- 正文结束 -->

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/22955252/viewspace-1117456/,如需转载,请注明出处,否则将追究法律责任。

上一篇: 没有了~
请登录后发表评论 登录
全部评论

注册时间:2009-12-01

最新文章