エラー
[ERROR]: Error: java.lang.RuntimeException: java.lang.RuntimeException: net.snowflake.client.jdbc.SnowflakeSQLException: User character length limit (65535) exceeded by string '***'原因
Snowflakeに一時テーブルを作成する際、string 型のカラムは VARCHAR(65535) となっております。こちらがデフォルトで転送可能な最大文字数となっており、この文字数を超える値を転送しようとした場合にエラーが発生します。
対処法
データ転送の「STEP2 データプレビュー・詳細設定」の出力オプションにあるカラム設定に以下の設定を行うことで、カラムの上限値に Snowflake の最大データ量「16777216」を設定して転送を行うことができます。
- カラム名:転送先の対象のカラムを指定
- データ型:VARCHAR
- value type:string
なお、以下の転送モードでは一時テーブルが作成されないため、上記の対処法での対応はできません。
- 追記 (INSERT DIRECT)
また、以下の転送モードにて既存のカラムにデータ転送する場合、カラムに設定されている上限値が転送できる最大文字数となります。
- 追記 (INSERT)
- 全件洗い替え (TRUNCATE INSERT)
- UPSERT (MERGE)
転送先Snowflakeの転送モードについてはドキュメントをご参照ください。
(参考)転送先 - Snowflake
コメント
0件のコメント
記事コメントは受け付けていません。