作用:
序列(sequence)作为数据库里的对象,主要作用是生成唯一的主键值;
创建sequence:
CREATE SEQUENCE SEQ_NAME --SI_EXTERNAL_SEQ要创建的sequence的名字
INCREMENT BY 1 -- 每次加几个
START WITH 1 -- 从1开始计数
NOMAXVALUE -- 不设置最大值
NOCYCLE -- 一直累加,不循环
CACHE 10; --缓存设置; 一次获取序列的多个连续值,默认 20 ,放到内存中,方便下次快速获取;
读取sequence:
select SEQ_NAME.nextval As hao from dual 读取下一个值
select SEQ_NAME.currval As hao from dual 读取当前值
sequence在绑定hbm.xml中绑定:
<id name="id" type="java.lang.Integer">
<column name="ID" />
<generator class="sequence">
<param name="sequence">seq_name</param>
</generator>
</id>