mathLib.assign() システム関数は、ソース式の値をターゲット変数に代入し、EGL バージョン 6 で自動的に行われる丸め動作を保持します。
結果は、変数宣言に指定されている小数点以下の桁数まで丸められます (ターゲット型が DECIMAL の場合)。この関数は一般に、EGL マイグレーションで使用されますが、ターゲット変数の型を判別できない場合に役に立ちます。 丸め、オーバーフロー、バージョンの互換性について詳しくは、数値型間の丸めおよび切り捨てを参照してください。
mathLib.assign(
source FLOAT | HEX(8) | HEX(16) in
target SMALLINT | INT | BIGINT | DECIMAL |
SMALLFLOAT | FLOAT | HEX(8) | HEX(16) out )
次の式は、オーバーフローになる場合があります。
x DECIMAL(9,2);
y DECIMAL(9,4);
...
x = cos(y);
ターゲット変数の型に合わせて結果が丸められていることを確認するには、 次のように mathLib.assign() 関数を使用して式をラップします。
assign(cos(y), x);
| プラットフォーム | 問題 |
|---|---|
| Rich UI | 関数 mathLib.assign() はサポートされていません。 |