原来只知道用Oracle, 因为没有自增列(像mssql), 所以采用一种叫"自动采番"的方式.
今天终于知道了这种Sequence, 类似"自动采番"的方式, 好像一个表一样, 只要从它里面取值, 它就可以自动按步长增长.
创建:
CREATE SEQUENCE test_sequence
INCREMENT BY 1 -- 每次加的个数据
START WITH 1 -- 从1开始计数
NOMAXVALUE -- 不设置最大值
NOCYCLE -- 一直累加,不循环
CACHE 10 ;
取数两种方式: 1. NEXTVAL: 取得下一个, 增长后返回
2. CURRVAL: 取得当前值, 不增长
可以在sql语句中直接应用:
SELECT TEST_SEQUENCE.CURRVAL FROM DUAL
感觉挺新鲜的, 表笑我