Cデータ型定義
typedef int XML_HANDLE;
使用
XMLインスタンスを引数として渡す場合や、XML型の結果を返す場合は、XML_HANDLEデータ型を使用します。
ここでは、UDF定義でXMLパラメータを使用する例と、C関数宣言でXML_HANDLEを使用する例を示します。
SQL関数定義 | 対応するC関数宣言 |
---|---|
CREATE FUNCTION F1 (A XML(100)) RETURNS XML(100) ...; |
void f1( XML_HANDLE *a, XML_HANDLE *result, ... ) { ... } |
UDF、UDM、および外部ストアド プロシージャは、XMLデータを、VARCHAR、CLOB、VARBYTE、またはBLOB値として処理することもできます。XMLSERIALIZE関数を使用することにより、XML値を外部ルーチンに渡す前にVARCHAR、CLOB、VARBYTE、またはBLOB値にシリアライズすることができます。CREATEXML関数を使用することにより、外部ルーチンの結果からXML型値を生成することができます。
XMLSERIALIZE関数とCREATEXML関数の詳細について、<Teradata Vantage™ - XMLデータ型、B035-1140>を参照してください。
したがって、XML_HANDLEデータ型だけでなく、次のCデータ型をXMLを処理するUDF、UDM、および外部ストアド プロシージャのパラメータおよび戻り型として使用することができます: