簡體   English   中英

DB2 LOAD修飾符-GeneratedOverride或IdentityOverride

[英]DB2 LOAD Modifier - GeneratedOverride or IdentityOverride

我正在執行DB2加載,並且正在努力了解使用GeneratedOverride對IdentityOverride的影響。 當我運行以下命令時:

db2 load from tab123.ixf of ixf replace into application.table_abc

所有行都被拒絕,而導致以下錯誤的原因是:

SQL3550W行row-number和column column-number中的字段值不為NULL,但目標列已定義為GENERATED ALWAYS。

因此,為解決這一問題,我執行了:

IXF的tab123.ixf的db2負載已被identityoverride修改並替換為application.table_abc

但這立即返回此錯誤:

SQL3526N修飾符子句“ IDENTITY OVERRIDE”與當前的裝入命令不一致。 原因碼:“ 3”。

通過檢查原因碼,我發現問題是“已指定生成的或與身份相關的文件類型修飾符,但目標表不包含此類列。” ..但SQL3550W錯誤似乎推斷出總是生成列!

我可以將這些行提交到表的唯一方法是運行。

從ixf的tab123.ixf的db2負載修改為generateoverride替換為application.table_abc

誰能啟發我為什么收到SQL3526N錯誤,或者運行generateoverride的含義是什么?

謝謝你陪我

生成的列不一定是標識列,顯然您的情況就是這種情況。 檢查CREATE TABLE語法,以查看生成列值的其他方法。

通過在加載期間使用GENERATEDOVERRIDE選項,您顯然可以用輸入文件中的值替換(替代)生成的值。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM