3.2.5.3.3. 10 進数の値
decimal.handling.mode
設定プロパティーがに設定された場合 precise
、コネクターはすべての DECIMAL
および NUMERIC
列に事前定義された Kafka Connect の org.apache.kafka.connect.data.Decimal
論理タイプを使用します。これがデフォルトのモードです。
PostgreSQL データタイプ | リテラルタイプ(スキーマタイプ) | セマンティクスタイプ(スキーマ名) | 備考 |
|
|
|
|
|
|
|
|
このルールには例外があります。NUMERIC
または DECIMAL
タイプをスケール制約なしで使用すると、データベースから送信される値は値ごとに異なる(バリアント可能な)スケーリングになります。この場合、タイプ io.debezium.data.VariableScaleDecimal
が使用され、転送された値の値とスケールの両方が含まれます。
PostgreSQL データタイプ | リテラルタイプ(スキーマタイプ) | セマンティクスタイプ(スキーマ名) | 備考 |
|
|
|
転送された値 |
|
|
|
転送された値 |
しかし、設定プロパティーがに decimal.handling.mode
設定された場合 double
、コネクターはすべて DECIMAL
および NUMERIC
値をすべて Java の二重値として表し、以下のようにエンコードします。
PostgreSQL データタイプ | リテラルタイプ(スキーマタイプ) | セマンティクスタイプ(スキーマ名) | 備考 |
|
| ||
|
|
decimal.handling.mode
設定プロパティーの最後のオプションはです string
。この場合、コネクターはすべての DECIMAL
および NUMERIC
値をフォーマットされた文字列表現として表現し、以下のようにエンコードします。
PostgreSQL データタイプ | リテラルタイプ(スキーマタイプ) | セマンティクスタイプ(スキーマ名) | 備考 |
|
| ||
|
|
PostgreSQL は、DECIMAL
/ の値に格納するための特殊なNUMERIC
値 NaN
(数字ではありません)に対応します。このような値のみ string
および double
モードは、それらを Double.NaN
または文字列定数としてエンコードでき NAN
ます。