对于identity的自增长列,在db2数据库迁移时需要做如下动作:
db2 "select max(logid) from DDW.TEST"
如果这里得到的值是3200, 则在新系统上面需要从3201开始,可使用下面的命令重置列的自增长开始值
db2 "alter table DDW.TEST alter column LOGID restart with 3201"
与identity差不多的还可以自己建立一个squence
Example 1: Create a sequence called ORG_SEQ that starts at 1,
increments by 1, does not cycle, and caches 24 values at a time:
CREATE SEQUENCE ORG_SEQ
START WITH 1
INCREMENT BY 1
NO MAXVALUE
NO CYCLE
CACHE 24
取出SEQ_TEST中nextval值语法:
例:
values nextval for SEQ_TEST
对于这种自增长在数据库迁移时同样需要考虑数据起始值的问题
详细参考:
db2 identity
阅读(1702) | 评论(0) | 转发(0) |