Blob (a_v4_extfn_blob)

Use the a_v4_extfn_blob structure to represent a free-standing blob object.

Implementation

typedef struct a_v4_extfn_blob {
    a_sql_uint64 (SQL_CALLBACK *blob_length)(a_v4_extfn_blob *blob);
    void (SQL_CALLBACK *open_istream)(a_v4_extfn_blob *blob, a_v4_extfn_blob_istream **is);
    void (SQL_CALLBACK *close_istream)(a_v4_extfn_blob *blob, a_v4_extfn_blob_istream *is);
    void (SQL_CALLBACK *release)(a_v4_extfn_blob *blob);
} a_v4_extfn_blob;

Method Summary

Method Name Data Type Description
blob_length a_sql_uint64 Returns the length, in bytes, of the specified blob.
open_istream void Opens an input stream that can be used to begin reading from the specified blob.
close_istream void Closes the input stream for the specified blob.
release void

Indicates that the caller is done with this blob and that the blob owner is free to release resources. After release(), referencing the blob results in an error. The owner usually deletes the memory when release() is called.

Description

The object a_v4_extfn_blob is used when:
  • a table UDF needs to read LOB or CLOB data from a scalar input value
  • a TPF needs to read LOB or CLOB data from a column in an input table

Restrictions and Limitations

None.