自增列數據導入,可以先用一int型字段當過渡列,導入原表identity列數據後,將此int列更改屬性即可,相關語句如下:
db2 => alter table test alter column id set not null
DB20000I SQL命令成功完成。
db2 => alter table test alter column id set generated always as identity(start with 1,increment by 1,no cache)
DB20000I SQL命令成功完成。
db2 => insert into test(name) values('a')
DB21034E 該命令被當作 SQL
語句來處理,因爲它不是有效的“命令行處理器”命令。在 SQL 處理期間,它返回:
SQL0668N 由於表 "EFAN.TEST" 上的原因碼爲 "7",所以不允許操作。 SQLSTATE=57016
db2 => reorg table test
DB20000I REORG命令成功完成。
db2 => insert into test(name) values('a')
DB20000I SQL命令成功完成。
ddb2 => insert into test(name) values('b')
DB20000I SQL命令成功完成。
db2 => select * from test