视图的做用数据库
视图的优势函数
注意事项code
语法索引
create or replace view 视图名 as select 语句;
create or replace
:关键字,建立或者替换(若原来没有,则建立,若已经有,则替换原来的)it
范例table
SQL> create or replace view v_emp as 2 select empno, ename, job from emp; 视图已建立。
SQL> select * from v_emp; EMPNO ENAME JOB ---------- -------------------- ------------------ 7777 S_HH%GGH CLERK 7369 SMITH CLERK 7499 ALLEN SALESMAN ...
语法test
create or replace view 视图名 as select 语句 with read only;
范例效率
SQL> create or replace view v_emp2 as 2 select empno,ename,job from emp 3 with read only; 视图已建立。
SQL> delete from v_emp2; delete from v_emp2 * 第 1 行出现错误: ORA-42399: 没法对只读视图执行 DML 操做
查看指定用户下的全部视图select
SQL> select view_name from dba_views where owner='SCOTT'; VIEW_NAME ------------------------------------------------------------ V_DEPT V_DEPT_EMP V_EMP V_EMP2
dba_views
查看数据库下全部视图owner='SCOTT'
指定用户view_name
显示视图的名称SQL> drop view v_emp; 视图已删除。 SQL> drop view v_emp2; 视图已删除。 SQL> select view_name from dba_views where owner='SCOTT'; VIEW_NAME ------------------------------------------------------------ V_DEPT V_DEPT_EMP
索引的做用语法
索引的注意事项
语法
create index 索引名 on 表名(列名);
范例
SQL> create index IND_emp_deptno on emp(deptno); 索引已建立。
语法
create unique index 索引名字 on 表名(列名);
范例
SQL> create unique index ind_indtest_id on ind_test(id); 索引已建立。
查看
SQL> select index_name from user_ind_columns where table_name='EMP'; INDEX_NAME ------------------------------------------------------------ UNIQUE_EMP_ENAME PK_EMP
SQL> select index_name from user_ind_columns where table_name='IND_TEST'; INDEX_NAME ------------------------------------------------------------ IND_INDTEST_ID
删除索引
SQL> drop index IND_emp_deptno; 索引已删除。
SQL> drop index IND_INDTEST_ID; 索引已删除。