UDFの結果として定義されるDISTINCT型UDTの値を設定するには、以下のようにします。
DISTINCT型 | 結果 |
---|---|
LOBを表わすものでない場合 |
|
LOBを表わす場合 |
|
FNC_SetDistinctValueおよびFNC_GetDistinctResultLobの詳細は、Cライブラリ関数を参照してください。
FLOATを表わすDISTINCT型UDTの値を設定するコードの一部を以下に示します。
void meters_t_toFeet( UDT_HANDLE *metersUdt, UDT_HANDLE *resultFeetUdt, char sqlstate[6]) { FLOAT value; int length; /* Get the value of metersUdt. */ FNC_GetDistinctValue(*metersUdt, &value, SIZEOF_FLOAT, &length); /* Convert meters to feet and set the result value */ value *= 3.28; FNC_SetDistinctValue(*resultFeetUdt, &value, SIZEOF_FLOAT); ... }