CREATE SEQUENCE <sequence-name>

AS data-type   默认 As Integer

START WITH <numeric-constant>

INCREMENT BY <numeric-constant>               默认 INCREMENT BY 1

MINVALUE <numeric-constant> | NO MINVALUE    默认 NO MINVALUE

MAXVALUE <numeric-constant> | NO MAXVALUE    默认 NO MAXVALUE

NO CYCLE | CYCLE                             默认 NO CYCLE

CACHE <numeric-constant> | NO CACHE          默认 CACHE 20

NO ORDER | ORDER                             默认 NO ORDER

参数简介如下:

or replace:若有创建序列重名的序列,那么将会被替代(先删除,再创建)

as datatype:指定数据类型,这里说明下,序列的数据类型只能为数值型,
            如,smallint,integer,bigint,不带小数点的decimal类型。

start with:指定序列的起始值,默认情况下,对于升序的序列是当前指定数据类型的最小值,
            对于降序序列的是当前指定类型的最大值。

increment by:指定增长的值,默认值为1,正数表示此序列为增长升序的,负数表示此序列为降序的。

minvalue:最小值,若降序序列,no cycle的话,到此值的时候就不再生成序列值了;

no minvalue:对于升序序列来说,此值为start with的值,如果start with值未指定的话就是1.
             对于降序序列来说,此值就是指定数据类型的最小值。

maxvalue:指定生产序列的最大值,

no maxvalue:对于升序序列来说,此值为指定数据类型的最大值;
             对于降序序列来说,此值为start with值,若未指定start with值的话就是-1.

cycle:循环使用数据值,对于升序序列来说,当达到了最大值之后,下一个值将会是其最小值;
       对于降序序列来说,达到最小之后,下一个序列值为其最大值。

no cycle:当达到序列的边界值之后,就不再产生序列值,默认选项。

cache:缓存序列值,表示每次应用此序列的时候,预先生产并存放在内存中的序列值。
       其作用是有效的降低了写日志的I/O操作。
       若在使用的过程中,出现系统错误的话,那么所有这些缓存值将会丢失。
       最小值为2,默认为20

no cache:当指定此选项的时候,内存中不会存储任何序列值,无论出现什么异常现象都不会影响到此序列,
          每次生存新的序列值,都会导致写日志的I/O操作。

order:按照请求的顺序生成值。

no order:不会按照请求的顺序生成值,默认情况。

序列取值:

下一个值:NEXTVAL FOR 序列 或 NEXT VALUE FOR 序列

当前值: PREVIOUS VALUE FOR 序列  或 PREVVAL FOR 序列

序列设置开始值:ALTER SEQUENCE 序列名  RESTART WITH 下一值

修改最大值    ALTER SEQUENCE <sequence_name> MAX VALUE <numeric-constant> | NO MAXVALUE

修改最小值:  ALTER SEQUENCE <sequence_name> MIN VALUE <numeric-constant> | NO MINVALUE (此值需要比当前值小)
 
修改步长:    ALTER SEQUENCE <sequence_name> INCREMENT BY <numeric-constant>;
 
修改CACHE值: ALTER SEQUENCE <sequence_name> CACHE <numeric-constant> | NO CACHE
 
修改循环属性: ALTER SEQUENCE <sequence_name> <CYCLE | NO CYCLE>
 
修改排序属性:ALTER SEQUENCE <sequence_name> <ORDER | NO ORDER>
 
从新计数:    ALTER SEQUENCE <sequence_name> RESTART | RESTART WITH <numeric-constant>

DROP SEQUENCE <sequence_name>;

db2序列的更多相关文章

  1. DB2序列和主键自增长

    1.把主键定义为自动增长标识符类型 在mysql中,如果把表的主键设为auto_increment类型,数据库就会自动为主键赋值.例如: create table customers(id int a ...

  2. DB2学习笔记备忘 2018.5.9

    DB2安装的时候选择了和系统用户一致的选项,然后登陆的时候,连接的时候输入的就是计算机用户的用户名和密码. 1.3 DB2数据库体系结构 系统 一个系统表示DB2的一个安装.在一个由很多及其组成的网络 ...

  3. DB2创建序列

    一.创建序列 序列是按照一定的规则生产的数值,序列的作用非常的大,比如银行交易中的流水号,就是记录每笔交易的关键字段. 通过create sequence语句创建序列,具体语法如下: >> ...

  4. 你搞懂 ORACLE、 SQLSERVER、MYSQL与DB2的区别了吗

    ORACLE. SQLSERVER.MYSQL与DB2的区别--平台性:    Oracle.MYSQL与DB2可在所有主流平台上运行:    SQL Server只能在Windows下运行: --安 ...

  5. DB2错误码信息

    00 完全成功完成 表 3  01 警告 表 4  02 无数据 表 5  07 动态 SQL 错误 表 6  08 连接异常 表 7  09 触发操作异常 表 8  0A 功能部件不受支持 表 9  ...

  6. db2基础

    DB2知识文档 一.db2 基础 基本语法 注释:"--"(两个减号) 字符串连接:"||" 如set msg='aaaa'||'bbbb',则msg为'aaa ...

  7. DB2常用命令

    DB2安装启动服务中启动不了,可用command启动并查看windows系统的日志.1.启动数据库  db2start2.停止数据库  db2stop3.连接数据库运行 db2命令之前要先运行db2c ...

  8. DB2语句详细资料

    http://www.2cto.com/database/201307/225809.html 1.数据操作语言(DML:select,delete,insert,update) <>查询 ...

  9. DB2常用sql命令

    DB2 清除数据库序列缓存 alter sequence wfr.wfr_bill_histories_s  nocache; 创建清空所有表数据脚本select 'alter table '||RT ...

随机推荐

  1. canvas 转盘文字

    canvas.js window.onload=function() { var canvas=document.getElementById('canvas'); var ctx=canvas.ge ...

  2. CF960G Bandit Blues 第一类斯特林数+分治+FFT

    题目传送门 https://codeforces.com/contest/960/problem/G 题解 首先整个排列的最大值一定是 \(A\) 个前缀最大值的最后一个,也是 \(B\) 个后缀最大 ...

  3. BZOJ3514 Codechef MARCH14 GERALD07加强版 LCT维护最大生成树 主席树

    题面 考虑没有询问,直接给你一个图问联通块怎么做. 并查集是吧. 现在想要动态地做,那么应该要用LCT. 考虑新加进来一条边,想要让它能够减少一个联通块的条件就是现在边的两个端点还没有联通. 如果联通 ...

  4. bzoj 1003物流运输 区间dp+spfa

    基本思路: 一开始确实没什么思路,因为觉得怎么着都会超时,然后看一下数据范围,呵,怎么都不会超时. 思路: 1.看到能改变线路,想到可以用以下区间dp,区间dp的话,先枚举长度,枚举开始位置,然后枚举 ...

  5. boost intrusive

    1. the advantages of intrusive container (1) Intrusive containers don't allocate memory dynamically. ...

  6. JS中的一些遍历方法

    1.遍历数组 以下遍历方法中for循环性能最好,而且优化版for循环性能最高.只有forEach不能跳出循环. 在循环数组时,如果在循环过程中对数组进行了增删改,那么在后面的每次循环中,进行操作的都是 ...

  7. 图与例解读Async/Await

    JavaScript ES7的async/await语法让异步promise操作起来更方便.如果你需要从多个数据库或者接口按顺序异步获取数据,你可能最终写出一坨纠缠不清的promise与回调.然而使用 ...

  8. Leetcode_897. Increasing Order Search Tree

    题目:https://leetcode.com/problems/increasing-order-search-tree/ 题意: 将一棵二叉搜索树,重排为一棵递增的二叉排序树. 解法1: rson ...

  9. SPOJ - FTOUR2 (点分治+树状数组)

    题目:https://vjudge.net/contest/307753#problem/I 题意:有一颗树,上面有白色黑色点,每个点上有一个权值,权值可以为负,现在我要求一条路径,权值和最大,这条路 ...

  10. python里的深浅拷贝

    拷贝就是拷贝,何来深浅之说? Python中,对象的赋值,拷贝(深/浅拷贝)之间是有差异的,如果使用的时候不注意,就可能产生意外的结果 其实这个是由于共享内存导致的结果 拷贝:原则上就是把数据分离出来 ...