質問
固定長コネクタで読み込んだファイルをデータベースのテーブルに書き込もうとしたところ、以下のエラーが発生しました。
「String型からBigDecimal型に変換できませんでした」
テーブルの該当カラムは、数値型でNullデータの保存は許容しています。
また、Mapperのロジックアイコンでトリム後にNull値を0に変換するとエラーは回避できますが、トリムで空白を除外した場合にはエラーとなります。
エラーの原因と対応方法を教えてください。
また、Mapperのロジックアイコンでトリム後にNull値を0に変換するとエラーは回避できますが、トリムで空白を除外した場合にはエラーとなります。
エラーの原因と対応方法を教えてください。
回答
■原因
本エラーは、文字列を数値に変換できなかった場合に発生します。
例えば、空文字は数値に変換できないため、数値型項目に空文字をセットした場合にエラーとなります。
例えば、空文字は数値に変換できないため、数値型項目に空文字をセットした場合にエラーとなります。
今回のようにデータベースやアプリケーションの数値項目に値をセットした場合、HULFT Squareは内部的に文字列のデータを数値に変換しています。
そのため、空文字のデータを数値型項目にセットしようとした場合にエラーとなります。
固定長コネクタのファイル読み取り処理では、データのないカラムの値は設定によってnullまたは空文字で読み取ります。
nullまたは空文字になる条件は、下記マニュアルをご参照ください。
nullまたは空文字になる条件は、下記マニュアルをご参照ください。
■回避策
Mapperのnull/空文字の変換ロジックを使用して、空文字を0などの任意の数値に変換してください。
固定長ファイル読み取り処理 - nullと空文字について
https://www.hulft.com/help/ja-jp/HULFTSquare/Content/Designer/Connector/fixedlength_get_data.htm
https://www.hulft.com/help/ja-jp/HULFTSquare/Content/Designer/Connector/fixedlength_get_data.htm
コメント
0件のコメント
記事コメントは受け付けていません。