DB2インポート時SQL3550Wになったとき

エクスポートしたデータをインポートするときが来ました。

hanaokaiwa.hatenablog.jp

以前このようにエクスポート時SQL2473Nエラーのときの対処法を記録したが、インポート時も同じエラーになり、同じ

modified by implicitlyhiddeninclude

 オプションを付ければ、動いた。

しかし、また以下のエラーが発生した。

SQL3550W 行 "1"、列 "16" のフィールド値は NULL
ではありませんが、ターゲット列は GENERATED ALWAYS として定義されています。

インターネットでいろいろ調べたら、以下のサイトが参考になった。

Generated(生成)列が定義されているDB2テーブルのデータ移動についての解説

identityignore はIDENTITY項目を無視するオプション

generatedignore はGENERATED項目を無視するオプション

今回自分の場合は「generatedignore」を使う。ちなみに、「identitymissing」と「generatedmissing」はエクスポート時にあらかじめIDENTITY項目かGENERATED項目を除外したデータをインポートするときに使うオプションです。

最終的にインポート文は

import from file.csv of del modified by generatedignore implicitlyhiddeninclude replace into table

 になった。青字は適宜に変更する。