Load导入自增字段数据
 
[sql] 
  
    在建表时,对于一些表的主键设置为自增,这样在对表进行数据插入、修改、删除时,会方便很多,但是一旦表的主键作为其他表的外键,那么在对数据进行迁移时,就会出现数据不匹配的问题,如何解决对于自增字段的数据和数据文件匹配问题呢。在深入研究load后发现,load对于自增数据的导入,有三种方式:IDENTITYIGNOR、IDENTITYMISSING、IDENTITYOVERRIDE。在实际测试后,对于IDENTITYIGNOR、IDENTITYMISSING,自增字段按照计数器累加;IDENTITYOVERRIDE,自增字段按照数据文件的数据导入表中。
   建表:
 
[sql] 
CREATE TABLE AAD (  
A_1 INT NOT NULL GENERATED ALWAYS AS IDENTITY (START WITH 1, INCREMENT BY 1),  
A_2 VARCHAR(50)  
)  
;  
 
数据文件内容(e:\load.txt):
[sql] 
2,"22"  
3,"33"  
 
导入命令:
 
[sql] 
LOAD CLIENT FROM 'E:\LOAD.TXT' OF DEL   
MODIFIED BY IDENTITYOVERRIDE  
REPLACE INTO AAD;  
加上IDENTITYOVERRIDE后,Load将把数据文件中的数值,填充到表的自增字段中。