SE_stream_set_blob |
Sets the value for a BLOB column
LONG SE_stream_set_blob
(SE_STREAM stream,
SHORT column,
const SE_BLOB_INFO
*blob_val);
stream | The stream handle |
column | The column number to set; columns numbers start with the number 1. |
blob_val | Pointer to a BLOB structure |
SE_stream_set_blob sets the value of a BLOB column, which is used when inserting or updating a row in a table or ArcSDE layer.
If the pointer to the SE_BLOB_INFO structure is NULL, a NULL value is set for this column.
The information necessary to insert the BLOB data is supplied in the SE_BLOB_INFO structure.
typedef struct {
LONG blob_length; /* Length in bytes of the BLOB */
CHAR *blob_buffer; /* Linear buffer of BLOB data */
} SE_BLOB_INFO
This function makes a duplicate of the given BLOB buffer and allocates additional memory to contain the BLOB. This can be inefficient when used with large BLOBs. For this situation, you may prefer to use SE_stream_bind_input_column because it does not create a copy of the BLOB. However, be aware that an SE_BIND_CONFLICT error is returned if SE_stream_bind_input_column was called earlier for the specified column or if you call SE_stream_bind_input_column after calling SE_stream_set_blob.
SE_SUCCESS
SE_BIND_CONFLICT
SE_CONNECTION_LOCKED
SE_CONNECTION_IN_USE
SE_FAILURE
SE_FUNCTION_SEQUENCE_ERROR
SE_INVALID_COLUMN_VALUE
SE_INVALID_PARAM_VALUE
SE_INVALID_POINTER
SE_INVALID_STREAM
SE_INVALID_STREAM_TYPE
SE_OUT_OF_CLMEM
SE_SDE_NOT_STARTED
SE_WRONG_COLUMN_TYPE