以下の規則は、Teradata Database以外(Oracleなど)からDECIMALデータを取得し、Teradata Databaseに移動する場合、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とみなされる場合、実行を試行