以下の規則は、データベース以外(Oracleなど)からDECIMALデータを取得し、データベースに移動する場合、z/OS、UNIX、およびWindowsプラットフォームで実行中のODBCオペレータに適用されます。
- ソース テーブルとターゲット テーブルの間でprecisionの値が異なる場合、データは実行時にチェックされます。 データが一致しない場合、ジョブは終了します。
- スケール係数が一致しない場合、以下のいずれかが起こります。
- ソースのスケール係数がターゲットよりも小さい場合、Teradata PTではこれらのスケール係数が一致するまでソースのスケール係数の末尾に0(ゼロ)を追加してから、ジョブを続行します。
または
- ソースのスケール係数がターゲットよりも大きい場合、データが損失する可能性があるため、データの処理を試行する前にジョブが終了します。
- ソースのスケール係数がターゲットよりも小さい場合、Teradata PTではこれらのスケール係数が一致するまでソースのスケール係数の末尾に0(ゼロ)を追加してから、ジョブを続行します。
- ソース列がNUMBER (m, n)でターゲット列がDECIMAL (M, N)の場合、ジョブは以下のことを実行します。
- n>Nの場合、エラーにより終了
- n<Nまたはn=Nの場合、実行
- m≤Mである場合、n<Nまたはn=Nと想定して実行
- m>Mで、n<Nまたはn=Nとみなされる場合、実行を試行