设为首页 加入收藏

TOP

【oracleocp知识点二】(六)
2015-07-24 11:59:38 来源: 作者: 【 】 浏览:52
Tags:oracleocp 知识点
-
| Id | Operation | Name | Rows | Bytes | Cost (%CPU)| Time |
--------------------------------------------------------------------------
| 0 | SELECT STATEMENT | | 1 | 38 | 3 (0)| 00:00:01 |
|* 1 | TABLE ACCESS FULL| EMP | 1 | 38 | 3 (0)| 00:00:01 |
--------------------------------------------------------------------------


Predicate Information (identified by operation id):
---------------------------------------------------


1 - filter(SUBSTR("ENAME",1)='KING')


SQL> create index emp_e_i on emp(substr(ename,1));


Index created.


SQL> select * from emp where substr(ename,1)='KING';


Execution Plan
----------------------------------------------------------
Plan hash value: 1426330053


--------------------------------------------------------------------------------
-------


| Id | Operation | Name | Rows | Bytes | Cost (%CPU)| Tim
e |


--------------------------------------------------------------------------------
-------


| 0 | SELECT STATEMENT | | 1 | 38 | 2 (0)| 00:
00:01 |


| 1 | TABLE ACCESS BY INDEX ROWID| EMP | 1 | 38 | 2 (0)| 00:
00:01 |


|* 2 | INDEX RANGE SCAN | EMP_E_I | 1 | | 1 (0)| 00:
00:01 |


--------------------------------------------------------------------------------
-------




Predicate Information (identified by operation id):
---------------------------------------------------


2 - access(SUBSTR("ENAME",1)='KING')
8.序列
自动产生唯一值
是一个共享对象
典型的用于创建主键值
可替代应用程序代码
如果将序列值缓存在内存中可以提交访问效率
create sequence ...
increment by ...
start with ...
...
SQL> create sequence s increment by 1 start with 50;


Sequence created.
SQL> insert into dept values(s.nextval,'D'||s.nextval,'LL'||s.nextval);


1 row created.


SQL> select * from dept;


DEPTNO DNAME LOC
---------- -------------- -------------
54
56 TX
50 D50 LL50
10 ACCOUNTING NEW YORK
20 RESEARCH DALLAS
30 SALES CHICAGO
40 OPERATIONS BOSTON
SQL> select s.currval from dual;


CURRVAL
----------
50
SQL> desc user_sequences
Name Null? Type
----------------------------------------- -------- ----------------------------
SEQUENCE_NAME NOT NULL VARCHAR2(30)
MIN_VALUE NUMBER
MAX_VALUE NUMBER
INCREMENT_BY NOT NULL NUMBER
CYCLE_FLAG VARCHAR2(1)
ORDER_FLAG VARCHAR2(1)
CACHE_SIZE NOT NULL NUMBER
LAST_NUMBER NOT NULL NUMBER


SQL> select s.currval+increment_by from user_sequences where sequence_name='S';


S.CURRVAL+INCREMENT_BY
----------------------
51
SQL> alter sequence s cycle cache 10;


Sequence altered.
SQL> select s.currval+increment_by from user_sequences where sequence_name='S';


S.CURRVAL+INCREMENT_BY
----------------------
51


SQL> select last_number from user_sequences where sequence_name='S';


LAST_NUMBER
-----------
51


SQL> insert into dept values(s.nextval,'D'||s.nextval,'LL'||s.nextval);


1 row created.


SQL> select last_number from user_sequences where sequence_name='S';


LAST_NUMBER
-----------
61


SQL> select s.currval+increment_by from user_sequences where sequence_name='S';


S.CURRVAL+INCREMENT_BY
----------------------
52


SQL> alter sequence s maxvalue 55;


Sequence altered.


SQL> create table dept1 as select * from dept;


Table created.


SQL> insert into dept1 values(s.nextval,'D'||s.nextval,'LL'||s.nextval);


1 row created.


SQL> /


1 row created.


SQL> /


1 row created.


SQL> /


1 row created.


SQL> /


1 row
首页 上一页 3 4 5 6 7 8 9 下一页 尾页 6/9/9
】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
分享到: 
上一篇向Oracle数据库插入一条数据 下一篇oralce11g注册表卸载20140810

评论

帐  号: 密码: (新用户注册)
验 证 码:
表  情:
内  容:

·Sphinx : 高性能SQL (2025-12-24 10:18:11)
·Pandas 性能优化 - (2025-12-24 10:18:08)
·MySQL 索引 - 菜鸟教 (2025-12-24 10:18:06)
·Shell 基本运算符 - (2025-12-24 09:52:56)
·Shell 函数 | 菜鸟教 (2025-12-24 09:52:54)