この項では、OCI NUMBER関数について説明します。
表19-12 NUMBER関数
| 関数 | 用途 |
|---|---|
|
|
絶対値を計算します。 |
|
|
|
|
|
アーク・コサインを計算します。 |
|
|
アーク・サインを計算します。 |
|
|
アーク・タンジェントを計算します。 |
|
|
2つの |
|
|
1つの |
|
|
|
|
|
|
|
|
コサインを計算します。 |
|
|
|
|
|
2つの |
|
|
eを指定のOracle |
|
|
|
|
|
整数をOracle |
|
|
実数をOracle |
|
|
文字列をOracle |
|
|
双曲線コサインを計算します。 |
|
|
双曲線サインを計算します。 |
|
|
双曲線タンジェントを計算します。 |
|
|
Oracle |
|
|
指定の底を整数で累乗します。 |
|
|
|
|
|
|
|
|
自然対数を計算します。 |
|
|
任意の底に対する対数を計算します。 |
|
|
除算の剰余を取得します。 |
|
|
|
|
|
|
|
|
底eを累乗します。 |
|
|
|
|
|
Oracle |
|
|
|
|
|
|
|
|
10の累乗を乗算し、小数点以下を指定の桁数にします。 |
|
|
Oracle |
|
|
サインを計算します。 |
|
|
|
|
|
|
|
|
タンジェントを計算します。 |
|
|
Oracle |
|
|
Oracle |
|
|
|
|
|
Oracle |
|
|
Oracle |
用途
Oracle NUMBERの絶対値を計算します。
構文
sword OCINumberAbs ( OCIError *err,
const OCINumber *number,
OCINumber *result );
パラメータ
OCIエラー・ハンドルです。エラーがある場合は、errに記録され、OCI_ERRORが戻されます。OCIErrorGet()をコールして診断情報を取得します。
入力NUMBERです。
入力NUMBERの絶対値です。
コメント
この関数は、NUMBER引数にNULLがある場合はエラーを戻します。
関連関数
用途
2つのOracle NUMBERを加算します。
構文
sword OCINumberAdd ( OCIError *err,
const OCINumber *number1,
const OCINumber *number2,
OCINumber *result );
パラメータ
OCIエラー・ハンドルです。エラーがある場合は、errに記録され、OCI_ERRORが戻されます。OCIErrorGet()をコールして診断情報を取得します。
加算されるNUMBERです。
number1をnumber2に加算した結果です。
コメント
この関数は、NUMBER引数にNULLがある場合はエラーを戻します。
関連関数
用途
Oracle NUMBERのアーク・コサインをラジアン単位で求めます。
構文
sword OCINumberArcCos ( OCIError *err,
const OCINumber *number,
OCINumber *result );
パラメータ
OCIエラー・ハンドルです。エラーがある場合は、errに記録され、OCI_ERRORが戻されます。OCIErrorGet()をコールして診断情報を取得します。
アーク・コサインの引数です。
ラジアンのアーク・コサインの結果です。
コメント
この関数は、NULLのNUMBER引数がある場合、またはnumberが-1より小さいかnumberが1より大きい場合はエラーを戻します。
関連関数
用途
Oracle NUMBERのアーク・サインをラジアン単位で求めます。
構文
sword OCINumberArcSin ( OCIError *err,
const OCINumber *number,
OCINumber *result );
パラメータ
OCIエラー・ハンドルです。エラーがある場合は、errに記録され、OCI_ERRORが戻されます。OCIErrorGet()をコールして診断情報を取得します。
アーク・サインの引数です。
ラジアンのアーク・サインの結果です。
コメント
この関数は、NULLのNUMBER引数がある場合、またはnumberが-1より小さいかnumberが1より大きい場合はエラーを戻します。
関連関数
用途
Oracle NUMBERのアーク・タンジェントをラジアン単位で求めます。
構文
sword OCINumberArcTan ( OCIError *err,
const OCINumber *number,
OCINumber *result );
パラメータ
OCIエラー・ハンドルです。エラーがある場合は、errに記録され、OCI_ERRORが戻されます。OCIErrorGet()をコールして診断情報を取得します。
アーク・タンジェントの引数です。
ラジアンのアーク・タンジェントの結果です。
コメント
この関数は、NUMBER引数にNULLがある場合はエラーを戻します。
関連関数
用途
2つのOracle NUMBERのアーク・タンジェントを求めます。
構文
sword OCINumberArcTan2 ( OCIError *err,
const OCINumber *number1,
const OCINumber *number2,
OCINumber *result );
パラメータ
OCIエラー・ハンドルです。エラーがある場合は、errに記録され、OCI_ERRORが戻されます。OCIErrorGet()をコールして診断情報を取得します。
アーク・タンジェントの引数1です。
アーク・タンジェントの引数2です。
ラジアンのアーク・タンジェントの結果です。
コメント
この関数は、NULLのNUMBER引数がある場合、またはnumber2が0(ゼロ)の場合はエラーを戻します。
関連関数
用途
1つのOracle NUMBERを別のOracle NUMBERに代入します。
構文
sword OCINumberAssign ( OCIError *err,
const OCINumber *from,
OCINumber *to );
パラメータ
OCIエラー・ハンドルです。エラーがある場合は、errに記録され、OCI_ERRORが戻されます。OCIErrorGet()をコールして診断情報を取得します。
割当て対象のNUMBERです。
コピー先のNUMBERです。
コメント
fromによって識別されたNUMBERをtoによって識別されたNUMBERに代入します。
この関数は、NUMBER引数にNULLがある場合はエラーを戻します。
関連関数
用途
Oracle NUMBERの上限値を計算します。
構文
sword OCINumberCeil ( OCIError *err,
const OCINumber *number,
OCINumber *result );
パラメータ
OCIエラー・ハンドルです。エラーがある場合は、errに記録され、OCI_ERRORが戻されます。OCIErrorGet()をコールして診断情報を取得します。
入力NUMBERです。
入力NUMBERの上限値を含む出力です。
コメント
この関数は、NUMBER引数にNULLがある場合はエラーを戻します。
関連関数
OCIErrorGet()、OCINumberFloor()
用途
2つのOracle NUMBERを比較します。
構文
sword OCINumberCmp ( OCIError *err,
const OCINumber *number1,
const OCINumber *number2,
sword *result );
パラメータ
OCIエラー・ハンドルです。エラーがある場合は、errに記録され、OCI_ERRORが戻されます。OCIErrorGet()をコールして診断情報を取得します。
比較するNUMBERです。
比較結果は次のとおりです。
コメント
この関数は、NUMBER引数にNULLがある場合はエラーを戻します。
関連関数
OCIErrorGet()、OCINumberAssign()
用途
Oracle NUMBERのコサインをラジアン単位で計算します。
構文
sword OCINumberCos ( OCIError *err,
const OCINumber *number,
OCINumber *result );
パラメータ
OCIエラー・ハンドルです。エラーがある場合は、errに記録され、OCI_ERRORが戻されます。OCIErrorGet()をコールして診断情報を取得します。
ラジアンのコサインの引数です。
コサインの結果です。
コメント
この関数は、NUMBER引数にNULLがある場合はエラーを戻します。
関連関数
OCIErrorGet()、OCINumberArcCos()
用途
OCINumberを減分します。
構文
sword OCINumberDec ( OCIError *err,
OCINumber *number );
パラメータ
OCIエラー・ハンドルです。エラーがある場合は、errに記録され、OCI_ERRORが戻されます。OCIErrorGet()をコールして診断情報を取得します。
減分される正数のOracle NUMBERです。
コメント
Oracle NUMBERを適切に減分します。入力値は0〜100^21-2の整数であるとみなされます。入力値が大きすぎる場合は0(ゼロ)として扱われ、その結果、Oracle NUMBERは1になります。入力値が正の整数でない場合は、予想できない結果になります。
この関数は、入力NUMBERにNULLがある場合はエラーを戻します。
関連関数
用途
2つのOracle NUMBERを除算します。
構文
sword OCINumberDiv ( OCIError *err,
const OCINumber *number1,
const OCINumber *number2,
OCINumber *result );
パラメータ
OCIエラー・ハンドルです。エラーがある場合は、errに記録され、OCI_ERRORが戻されます。OCIErrorGet()をコールして診断情報を取得します。
分子へのポインタです。
分母へのポインタです。
除算結果です。
コメント
number1をnumber2で除算し、その結果をresultに戻します。
この関数は、次の場合にエラーを戻します。
NUMBER引数にNULLがある場合
アンダーフロー・エラーがある場合
ゼロによる除算エラーがある場合
関連関数
用途
eを指定のOracle NUMBERで累乗します。
構文
sword OCINumberExp ( OCIError *err,
const OCINumber *number,
OCINumber *result );
パラメータ
OCIエラー・ハンドルです。エラーがある場合は、errに記録され、OCI_ERRORが戻されます。OCIErrorGet()をコールして診断情報を取得します。
この関数は、eをこのOracle NUMBERで累乗します。
指数の出力です。
コメント
この関数は、NUMBER引数にNULLがある場合はエラーを戻します。
関連関数
用途
Oracle NUMBERの下限値を計算します。
構文
sword OCINumberFloor ( OCIError *err,
const OCINumber *number,
OCINumber *result );
パラメータ
OCIエラー・ハンドルです。エラーがある場合は、errに記録され、OCI_ERRORが戻されます。OCIErrorGet()をコールして診断情報を取得します。
入力NUMBERです。
入力NUMBERの下限値です。
コメント
この関数は、NUMBER引数にNULLがある場合はエラーを戻します。
関連関数
用途
整数をOracle NUMBERに変換します。
構文
sword OCINumberFromInt ( OCIError *err,
const void *inum,
uword inum_length,
uword inum_s_flag,
OCINumber *number );
パラメータ
OCIエラー・ハンドルです。エラーがある場合は、errに記録され、OCI_ERRORが戻されます。OCIErrorGet()をコールして診断情報を取得します。
変換する整数へのポインタです。
整数のサイズです。
整数の符号を指定するフラグで、可能な値は次のとおりです。
OCI_NUMBER_UNSIGNED− 符号なしの値
OCI_NUMBER_SIGNED− 符号付きの値
Oracle NUMBERに変換される指定の整数です。
コメント
これは、システム固有な型変換関数です。 ub4やsb2などのOracle標準システム固有の整数型をOracle NUMBERに変換します。
この関数は、数値が大きすぎてOracle NUMBERに適合しない場合、numberまたはinumがNULLの場合、あるいはinum_s_flagに無効な符号フラグの値が渡された場合は、エラーを戻します。
関連関数
OCIErrorGet()、OCINumberToInt()
用途
実数(浮動小数点数)型をOracle NUMBERに変換します。
構文
sword OCINumberFromReal ( OCIError *err,
const void *rnum,
uword rnum_length,
OCINumber *number );
パラメータ
OCIエラー・ハンドルです。エラーがある場合は、errに記録され、OCI_ERRORが戻されます。OCIErrorGet()をコールして診断情報を取得します。
変換する浮動小数点数へのポインタです。
目的の結果のサイズです。sizeof({float | double | long double})に等しくなります。
Oracle NUMBERに変換される指定のfloatです。
コメント
これは、システム固有な型変換関数です。システム固有の浮動小数点型をOracle NUMBERに変換します。
この関数は、numberまたはrnumがNULLであるか、rnum_lengthが0(ゼロ)である場合はエラーを戻します。
関連関数
OCIErrorGet()、OCINumberToReal()
用途
文字列をOracle NUMBERに変換します。
構文
sword OCINumberFromText ( OCIError *err,
const OraText *str,
ub4 str_length,
const OraText *fmt,
ub4 fmt_length,
const OraText *nls_params,
ub4 nls_p_length,
OCINumber *number );
パラメータ
OCIエラー・ハンドルです。エラーがある場合は、errに記録され、OCI_ERRORが戻されます。OCIErrorGet()をコールして診断情報を取得します。
Oracle NUMBERに変換する入力文字列です。
入力文字列のサイズです。
変換書式です。
fmtパラメータの長さです。
グローバル・サポートのフォーマット指定です。ヌル文字列("")の場合は、セッションのデフォルト・パラメータが使用されます。
nls_paramsパラメータの長さです。
NUMBERに変換される指定の文字列です。
コメント
指定された文字列を指定の書式のNUMBERに変換します。書式および多言語パラメータの詳細は『Oracle Database SQLリファレンス』のTO_NUMBER変換関数の説明を参照してください。
この関数は、無効な書式、マルチバイト書式または入力文字列がある場合、numberまたはstrがNULLである場合、あるいはstr_lengthが0(ゼロ)である場合はエラーを戻します。
関連関数
OCIErrorGet()、OCINumberToText()
用途
Oracle NUMBERの双曲線コサインを計算します。
構文
sword OCINumberHypCos ( OCIError *err,
const OCINumber *number,
OCINumber *result );
パラメータ
OCIエラー・ハンドルです。エラーがある場合は、errに記録され、OCI_ERRORが戻されます。OCIErrorGet()をコールして診断情報を取得します。
コサイン双曲線の引数です。
コサイン双曲線の結果です。
コメント
この関数は、NUMBER引数のいずれかにNULLがある場合はエラーを戻します。
|
注意: Oracle NUMBERのオーバーフローは、予想できない結果値が出力される原因となります。 |
関連関数
OCIErrorGet()、OCINumberHypSin()、OCINumberHypTan()
用途
Oracle NUMBERの双曲線サインを計算します。
構文
sword OCINumberHypSin ( OCIError *err,
const OCINumber *number,
OCINumber *result );
パラメータ
OCIエラー・ハンドルです。エラーがある場合は、errに記録され、OCI_ERRORが戻されます。OCIErrorGet()をコールして診断情報を取得します。
サイン双曲線の引数です。
サイン双曲線の結果です。
コメント
この関数は、NUMBER引数のいずれかにNULLがある場合はエラーを戻します。
|
注意: Oracle NUMBERのオーバーフローは、予想できない結果値が出力される原因となります。 |
関連関数
OCIErrorGet()、OCINumberHypSin()、OCINumberHypTan()
用途
Oracle NUMBERの双曲線タンジェントを計算します。
構文
sword OCINumberHypTan ( OCIError *err,
const OCINumber *number,
OCINumber *result );
パラメータ
OCIエラー・ハンドルです。エラーがある場合は、errに記録され、OCI_ERRORが戻されます。OCIErrorGet()をコールして診断情報を取得します。
タンジェント双曲線の引数です。
タンジェント双曲線の結果です。
コメント
この関数は、NUMBER引数のいずれかにNULLがある場合はエラーを戻します。
|
注意: Oracle NUMBERのオーバーフローは、予想できない結果値が出力される原因となります。 |
関連関数
OCIErrorGet()、OCINumberHypCos()、OCINumberHypSin()
用途
OCINumberを増分します。
構文
sword OCINumberInc ( OCIError *err,
OCINumber *number );
パラメータ
OCIエラー・ハンドルです。エラーがある場合は、errに記録され、OCI_ERRORが戻されます。OCIErrorGet()をコールして診断情報を取得します。
増分される正数のOracle NUMBERです。
コメント
Oracle NUMBERを適切に増分します。入力値は0〜100^21-2の整数であるとみなされます。入力値が大きすぎる場合は0(ゼロ)として扱われ、その結果、Oracle NUMBERは1になります。入力値が正の整数でない場合は、予想できない結果になります。
この関数は、入力NUMBERにNULLがある場合はエラーを戻します。
関連関数
用途
指定の基数を指定の整数で累乗します。
構文
sword OCINumberIntPower ( OCIError *err,
const OCINumber *base,
const sword exp,
OCINumber *result );
パラメータ
OCIエラー・ハンドルです。エラーがある場合は、errに記録され、OCI_ERRORが戻されます。OCIErrorGet()をコールして診断情報を取得します。
指数の基数です。
基数が累乗される指数です。
指数の出力です。
コメント
この関数は、NUMBER引数のいずれかにNULLがある場合はエラーを戻します。
関連関数
OCIErrorGet()、OCINumberPower()
用途
OCINumberが整数かどうかをテストします。
構文
sword OCINumberIsInt ( OCIError *err,
const OCINumber *number,
boolean *result );
パラメータ
OCIエラー・ハンドルです。エラーがある場合は、errに記録され、OCI_ERRORが戻されます。OCIErrorGet()をコールして診断情報を取得します。
テストされるNUMBERです。
整数値の場合はTRUE、それ以外の場合はFALSEに設定されます。
コメント
この関数は、numberまたはresultがNULLの場合にエラーを戻します。
関連関数
OCIErrorGet()、OCINumberRound()、OCINumberTrunc()
用途
指定のNUMBERが0(ゼロ)に等しいかどうかをテストします。
構文
sword OCINumberIsZero ( OCIError *err,
const OCINumber *number,
boolean *result );
パラメータ
OCIエラー・ハンドルです。エラーがある場合は、errに記録され、OCI_ERRORが戻されます。OCIErrorGet()をコールして診断情報を取得します。
比較するNUMBERです。
0(ゼロ)の場合はTRUE、それ以外の場合はFALSEが設定されます。
コメント
この関数は、NUMBER引数にNULLがある場合はエラーを戻します。
関連関数
OCIErrorGet()、OCINumberSetZero()
用途
Oracle NUMBERの自然対数(基数e)を求めます。
構文
sword OCINumberLn ( OCIError *err,
const OCINumber *number,
OCINumber *result );
パラメータ
OCIエラー・ハンドルです。エラーがある場合は、errに記録され、OCI_ERRORが戻されます。OCIErrorGet()をコールして診断情報を取得します。
このNUMBERの対数を計算します。
対数結果です。
コメント
この関数は、NUMBER引数がNULLのいずれかである場合、またはnumberが0(ゼロ)以下の場合はエラーを戻します。
関連関数
OCIErrorGet()、OCINumberExp()、OCINumberLog()
用途
Oracle NUMBERの任意の基数に対する対数を求めます。
構文
sword OCINumberLog ( OCIError *err,
const OCINumber *base,
const OCINumber *number,
OCINumber *result );
パラメータ
OCIエラー・ハンドルです。エラーがある場合は、errに記録され、OCI_ERRORが戻されます。OCIErrorGet()をコールして診断情報を取得します。
対数の基数です。
演算子です。
対数結果です。
コメント
この関数は、次の場合にエラーを戻します。
NUMBER引数にNULLがある場合
number <= 0
base <= 0
関連関数
用途
2つのOracle NUMBERの除算の余り(剰余)を取得します。
構文
sword OCINumberMod ( OCIError *err,
const OCINumber *number1,
const OCINumber *number2,
OCINumber *result );
パラメータ
OCIエラー・ハンドルです。エラーがある場合は、errに記録され、OCI_ERRORが戻されます。OCIErrorGet()をコールして診断情報を取得します。
分子へのポインタです。
分母へのポインタです。
結果の剰余です。
コメント
この関数は、number1またはnumber2がNULLか、0(ゼロ)による除算エラーがある場合にエラーを戻します。
関連関数
用途
2つのOracle NUMBERを乗算します。
構文
sword OCINumberMul ( OCIError *err,
const OCINumber *number1,
const OCINumber *number2,
OCINumber *result );
パラメータ
OCIエラー・ハンドルです。エラーがある場合は、errに記録され、OCI_ERRORが戻されます。OCIErrorGet()をコールして診断情報を取得します。
乗算するNUMBERです。
乗算するNUMBERです。
乗算結果です。
コメント
number1にnumber2を乗算し、その結果をresultに戻します。
この関数は、NUMBER引数にNULLがある場合はエラーを戻します。
関連関数
用途
Oracle NUMBERを負の数にします。
構文
sword OCINumberNeg ( OCIError *err,
const OCINumber *number,
OCINumber *result );
パラメータ
OCIエラー・ハンドルです。エラーがある場合は、errに記録され、OCI_ERRORが戻されます。OCIErrorGet()をコールして診断情報を取得します。
負の数にするNUMBERです。
numberの負の値が入ります。
コメント
この関数は、NUMBER引数のいずれかにNULLがある場合はエラーを戻します。
関連関数
OCIErrorGet()、OCINumberAbs()、OCINumberSign()
用途
指定の基数を指定の指数で累乗します。
構文
sword OCINumberPower ( OCIError *err,
const OCINumber *base,
const OCINumber *number,
OCINumber *result );
パラメータ
OCIエラー・ハンドルです。エラーがある場合は、errに記録され、OCI_ERRORが戻されます。OCIErrorGet()をコールして診断情報を取得します。
指数の基数です。
基数が累乗される指数です。
指数の出力です。
コメント
この関数は、NUMBER引数にNULLがある場合はエラーを戻します。
関連関数
用途
OCINumberを指定の小数点以下の桁数に丸めます。
構文
sword OCINumberPrec ( OCIError *err,
const OCINumber *number,
eword nDigs,
OCINumber *result );
パラメータ
OCIエラー・ハンドルです。エラーがある場合は、errに記録され、OCI_ERRORが戻されます。OCIErrorGet()をコールして診断情報を取得します。
精度を設定する数値です。
目的の結果の小数点以下の桁数です。
結果です。
コメント
桁数に基づいて、浮動小数点を丸めます。
この関数は、NUMBER引数にNULLがある場合はエラーを戻します。
関連関数
OCIErrorGet()、OCINumberRound()
用途
Oracle NUMBERを指定の小数点以下の桁数に丸めます。
構文
sword OCINumberRound ( OCIError *err,
const OCINumber *number,
sword decplace,
OCINumber *result );
パラメータ
OCIエラー・ハンドルです。エラーがある場合は、errに記録され、OCI_ERRORが戻されます。OCIErrorGet()をコールして診断情報を取得します。
丸めるNUMBERです。
丸める小数点以下の桁数です。負数も可能です。
丸めた結果の出力です。
コメント
この関数は、NUMBER引数にNULLがある場合はエラーを戻します。
関連関数
OCIErrorGet()、OCINumberTrunc()
用途
OCINumberをPiに設定します。
構文
void OCINumberSetPi ( OCIError *err,
OCINumber *num );
パラメータ
OCIエラー・ハンドルです。エラーがある場合は、errに記録され、OCI_ERRORが戻されます。OCIErrorGet()をコールして診断情報を取得します。
Piの値に設定されるNUMBERです。
コメント
指定のNUMBERをPiの値に初期化します。
関連関数
用途
Oracle NUMBERを0(ゼロ)に初期化します。
構文
void OCINumberSetZero ( OCIError *err
OCINumber *num );
パラメータ
有効なOCIエラー・ハンドルです。関数がエラーを生成しないため、この関数はエラーをチェックしません。
0(ゼロ)値に初期化するNUMBERです。
コメント
なし
関連関数
用途
NUMBERを10の累乗で乗算し、小数点を指定の桁に移動します。
構文
sword OCINumberShift ( OCIError *err,
const OCINumber *number,
const sword nDig,
OCINumber *result );
パラメータ
OCIエラー・ハンドルです。エラーがある場合は、errに記録され、OCI_ERRORが戻されます。OCIErrorGet()をコールして診断情報を取得します。
桁を移動するOracle NUMBERです。
移動する小数点以下の桁数です。
桁を移動した結果です。
コメント
numberを10^nDigで乗算し、productに結果を設定します。
この関数は、入力numberにNULLがある場合はエラーを戻します。
関連関数
用途
Oracle NUMBERの符号を取得します。
構文
sword OCINumberSign ( OCIError *err,
const OCINumber *number,
sword *result );
パラメータ
OCIエラー・ハンドルです。エラーがある場合は、errに記録され、OCI_ERRORが戻されます。OCIErrorGet()をコールして診断情報を取得します。
符号が戻されるNUMBERです。
可能な値は次のとおりです。
コメント
この関数は、numberまたはresultがNULLの場合にエラーを戻します。
関連関数
用途
Oracle NUMBERのサインをラジアン単位で計算します。
構文
sword OCINumberSin ( OCIError *err,
const OCINumber *number,
OCINumber *result );
パラメータ
OCIエラー・ハンドルです。エラーがある場合は、errに記録され、OCI_ERRORが戻されます。OCIErrorGet()をコールして診断情報を取得します。
ラジアン単位でのサインの引数です。
サインの結果です。
コメント
この関数は、NUMBER引数のいずれかにNULLがある場合はエラーを戻します。
関連関数
OCIErrorGet()、OCINumberArcSin()
用途
Oracle NUMBERの平方根を計算します。
構文
sword OCINumberSqrt ( OCIError *err,
const OCINumber *number,
OCINumber *result );
パラメータ
OCIエラー・ハンドルです。エラーがある場合は、errに記録され、OCI_ERRORが戻されます。OCIErrorGet()をコールして診断情報を取得します。
入力NUMBERです。
入力NUMBERの平方根を含む出力です。
コメント
この関数は、numberがNULLまたは負のnumberの場合はエラーを戻します。
関連関数
OCIErrorGet()、OCINumberPower()
用途
2つのOracle NUMBERを減算します。
構文
sword OCINumberSub ( OCIError *err,
const OCINumber *number1,
const OCINumber *number2,
OCINumber *result );
パラメータ
OCIエラー・ハンドルです。エラーがある場合は、errに記録され、OCI_ERRORが戻されます。OCIErrorGet()をコールして診断情報を取得します。
この関数は、number1からnumber2を減算します。
減算結果です。
コメント
number1からnumber2を減算し、その結果をresultに戻します。
この関数は、NUMBER引数にNULLがある場合はエラーを戻します。
関連関数
用途
Oracle NUMBERのタンジェントをラジアン単位で計算します。
構文
sword OCINumberTan ( OCIError *err,
const OCINumber *number,
OCINumber *result );
パラメータ
OCIエラー・ハンドルです。エラーがある場合は、errに記録され、OCI_ERRORが戻されます。OCIErrorGet()をコールして診断情報を取得します。
ラジアン単位でのタンジェントの引数です。
タンジェントの結果です。
コメント
この関数は、NUMBER引数にNULLがある場合はエラーを戻します。
関連関数
OCIErrorGet()、OCINumberArcTan()、OCINumberArcTan2()
用途
Oracle NUMBER型を整数に変換します。
構文
sword OCINumberToInt ( OCIError *err,
const OCINumber *number,
uword rsl_length,
uword rsl_flag,
void *rsl );
パラメータ
OCIエラー・ハンドルです。エラーがある場合は、errに記録され、OCI_ERRORが戻されます。OCIErrorGet()をコールして診断情報を取得します。
変換するNUMBERです。
適切な結果のサイズです。
出力値の符号を指定するフラグで、可能な値は次のとおりです。
OCI_NUMBER_UNSIGNED− 符号なしの値
OCI_NUMBER_SIGNED− 符号付きの値
結果を保存する領域へのポインタです。
コメント
これは、システム固有な型変換関数です。指定のOracle NUMBERをub2、ub4、sb2など、xbnという書式の整数に変換します。
この関数は、numberまたはrslがNULLの場合、numberが大きすぎる(オーバーフロー)か小さすぎる(アンダーフロー)場合、または無効な符号フラグの値がrsl_flagに渡された場合にエラーを戻します。
関連関数
OCIErrorGet()、OCINumberFromInt()
用途
Oracle NUMBER型を実数に変換します。
構文
sword OCINumberToReal ( OCIError *err,
const OCINumber *number,
uword rsl_length,
void *rsl );
パラメータ
OCIエラー・ハンドルです。エラーがある場合は、errに記録され、OCI_ERRORが戻されます。OCIErrorGet()をコールして診断情報を取得します。
変換するNUMBERです。
目的の結果のサイズです。sizeof({float | double | long double})に等しくなります。
結果を保存する領域へのポインタです。
コメント
これは、システム固有な型変換関数です。Oracle NUMBERをシステム固有の実数型に変換します。この関数は、単に最大LDBL_DIGまたはDBL_DIG、FLT_DIG桁の精度のNUMBERを変換し、後続の0(ゼロ)を削除します。これらの定数は、float.hに定義されます。
この関数に有効なOCINumberの値を渡す必要があります。それ以外の場合は、結果は保証されません。
関連関数
OCIErrorGet()、OCINumberFromReal()
用途
NUMBERの配列を実数の配列に変換します。
構文
sword OCINumberToRealArray ( OCIError *err,
const OCINumber **number,
uword elems,
uword rsl_length,
void *rsl );
パラメータ
OCIエラー・ハンドルです。エラーがある場合は、errに記録され、OCI_ERRORが戻されます。OCIErrorGet()をコールして診断情報を取得します。
変換対象のNUMBERの配列へのポインタです。
NUMBERポインタの最大数です。
目的の結果のサイズです。sizeof({ float | double | long double })に等しくなります。
結果を保存する領域の配列へのポインタです。
コメント
Oracle NUMBERをマシン固有の実数型に変換するシステム固有な型変換関数です。 この関数は、単に最大LDBL_DIG、DBL_DIG、またはFLT_DIG桁の精度の数値を変換し、後続の0(ゼロ)を削除します。この定数は、float.hヘッダー・ファイルに定義されます。
この関数に有効なOCINumberの値を渡す必要があります。それ以外の場合は、結果は保証されません。
戻り値
OCI_SUCCESS(関数が正常に完了した場合)
OCI_INVALID_HANDLE(errがNULLの場合)
OCI_ERROR(numberまたはrslがNULLの場合、またはrsl_lengthが0(ゼロ)の場合)
関連関数
OCIErrorGet()、OCINumberToReal()
用途
指定された書式に従って、Oracle NUMBERを文字列に変換します。
構文
sword OCINumberToText ( OCIError *err,
const OCINumber *number,
const OraText *fmt,
ub4 fmt_length,
const OraText *nls_params,
ub4 nls_p_length,
ub4 *buf_size,
OraText *buf );
パラメータ
OCIエラー・ハンドルです。エラーがある場合は、errに記録され、OCI_ERRORが戻されます。OCIErrorGet()をコールして診断情報を取得します。
変換するOracle NUMBERです。
変換書式です。
fmtパラメータの長さです。
グローバル・サポートのフォーマット指定です。ヌル文字列((text *)0)の場合は、そのセッションのデフォルト・パラメータが使用されます。
nls_paramsパラメータの長さです。
バッファのサイズです。
変換された文字列が配置されるバッファです。
コメント
書式およびグローバル・サポート・パラメータの詳細は『Oracle Database SQLリファレンス』のTO_NUMBER変換関数の説明を参照してください。
変換された数字文字列は、最大buf_sizeバイトまでbufに格納されます。この関数は、次の場合にエラーを戻します。
numberまたはbufがNULLである場合
バッファが小さすぎる場合
書式またはマルチバイト・フォーマットが無効である場合
数値を指定の書式のテキストに翻訳するときにオーバーフローが発生した場合
関連関数
OCIErrorGet()、OCINumberFromText()
用途
Oracle NUMBERを指定の小数点以下の桁数で切り捨てます。
構文
sword OCINumberTrunc ( OCIError *err,
const OCINumber *number,
sword decplace,
OCINumber *result );
パラメータ
OCIエラー・ハンドルです。エラーがある場合は、errに記録され、OCI_ERRORが戻されます。OCIErrorGet()をコールして診断情報を取得します。
入力NUMBERです。
切り捨てる小数点以下の桁数です。負数も可能です。
切捨ての出力です。
コメント
この関数は、NUMBER引数にNULLがある場合はエラーを戻します。
関連関数