大家可能还记得ORACLE临时表有两种类型:会话级的临时表和事务级的临时表,对应的关键字分别是ON COMMIT DELETE ROWS和ON COMMIT PRESERVE ROWS。其中,
ON COMMIT PRESERVE ROWS表示临时表的内容可以跨事务而存在,不过,当该会话结束时,临时表的暂时段将随着会话的结束而被丢弃,临时表中的数据自然也就随之丢弃。
今天和大家分享一个Sequence在Oracle 12c下的新特性,和临时表有点类似,支持Session特性。也就是说,在不同的会话中同一序列对象互不影响,各自计数。
2.查看两 个 序列 的 NEXTVAL
通过NEXTVAL查看两个序列的值,分别执 行两次,我们看 到输出结果没有差别。
3.打开一个新的session,查看 两个 序列的 NEXTVAL
接下来,我们打开一个新的会话。
通过 NEXTVAL查看两个序列的值,分别执行两次,我们看到输出结果出现了差异。
拥有session特性的序列HOEGH2重新从1开始计数,而普通序列 HOEGH1则是接着上次的序列值继续计数。
~~~~~~~ the end~~~~~~~~~
hoegh
2016.09.08
今天和大家分享一个Sequence在Oracle 12c下的新特性,和临时表有点类似,支持Session特性。也就是说,在不同的会话中同一序列对象互不影响,各自计数。
1.创建一个普通序列和一个session序列
点击(此处)折叠或打开
- SQL> select banner from v$version;
-
- BANNER
- --------------------------------------------------------------------------------
- Oracle Database 12c Enterprise Edition Release 12.1.0.2.0 - 64bit Production
- PL/SQL Release 12.1.0.2.0 - Production
- CORE 12.1.0.2.0 Production
- TNS for Linux: Version 12.1.0.2.0 - Production
- NLSRTL Version 12.1.0.2.0 - Production
-
- SQL>
- SQL> show user
- USER is "HOEGH"
- SQL>
- SQL> create sequence HOEGH1
- 2 start with 1
- 3 increment by 1;
-
- Sequence created.
-
- SQL>
- SQL> create sequence HOEGH2
- 2 start with 1
- 3 increment by 1
- 4 session;
-
- Sequence created.
-
- SQL>
2.查看两 个 序列 的 NEXTVAL
通过NEXTVAL查看两个序列的值,分别执 行两次,我们看 到输出结果没有差别。
点击(此处)折叠或打开
- SQL>
- SQL> select HOEGH1.NEXTVAL from dual;
-
- NEXTVAL
- ----------
- 1
-
- SQL> /
-
- NEXTVAL
- ----------
- 2
-
- SQL>
- SQL> select HOEGH2.NEXTVAL from dual;
-
- NEXTVAL
- ----------
- 1
-
- SQL> /
-
- NEXTVAL
- ----------
- 2
-
- SQL>
3.打开一个新的session,查看 两个 序列的 NEXTVAL
接下来,我们打开一个新的会话。
通过 NEXTVAL查看两个序列的值,分别执行两次,我们看到输出结果出现了差异。
拥有session特性的序列HOEGH2重新从1开始计数,而普通序列 HOEGH1则是接着上次的序列值继续计数。
点击(此处)折叠或打开
- SQL> sho user
- USER is "HOEGH"
- SQL>
- SQL> select HOEGH1.NEXTVAL from dual;
-
- NEXTVAL
- ----------
- 3
-
- SQL> /
-
- NEXTVAL
- ----------
- 4
-
- SQL>
- SQL> select HOEGH2.NEXTVAL from dual;
-
- NEXTVAL
- ----------
- 1
-
- SQL> /
-
- NEXTVAL
- ----------
- 2
-
- SQL>
~~~~~~~ the end~~~~~~~~~
hoegh
2016.09.08
来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/30162081/viewspace-2124687/,如需转载,请注明出处,否则将追究法律责任。
转载于:http://blog.itpub.net/30162081/viewspace-2124687/