在Mybatis中执行数据库的插入操作时会使用到Sequence这个玩意,虽不是很重要的知识,但也不能不明不白的,所以稍微学习了一下。
1、第一句话:在oracle中sequence就是序号,每次取的时候它会自动增加。sequence与表没有关系。
2、如何创建sequence:示例,
--create sequence ASS_SORT_ERR_INFO_SEQ
create sequence ASS_SORT_ERR_INFO_SEQ minvalue 1 maxvalue 999999999999999999999999999 start with 60001 increment by 1 cache 200;
传说中的语法格式:
CREATE SEQUENCE seqTest
INCREMENT BY 1 -- 每次加几个
START WITH 1 -- 从1开始计数
NOMAXvalue -- 不设置最大值
NOCYCLE -- 一直累加,不循环
CACHE 10; --设置缓存cache个序列,如果系统down掉了或者其它情况将会导致序列不连续,也可以设置为---------NOCACHE
3、使用方法:
4、示例:
这样我们在进行插入操作时,传进来的Sign_Info对象的id就会被赋值为sequence的值