MimerSetLob

Sets a large object in the database.

This routine is used to create a large object (BINARY LARGE OBJECT, a CHARACTER LARGE OBJECT, or a NATIONAL CHARACTER LARGE OBJECT) in the database.

Whenever a large object is about to the inserted in the database as a parameter to a statement, this routine is called for that specific parameter.

Upon successful return, a handle to a large object is stored in the database. The contents of the object may be set at a later time using one or more calls to MimerSetBlobData or MimerSetNclobData.

If the size/length of the object is 0, MimerSetBlobData or MimerSetNclobData need not be called. If the size is larger than 0, MimerSetBlobData or MimerSetNclobData must be called to complete the creation of the large object.

To set the parameter to the SQL null value, use the MimerSetNull function.

Parameters

int32_t MimerSetLob (

            MimerStatement statementhandle,

            int16_t param_no,

            size_t size_length,

            MimerLob *lobhandle)

statementhandle

in

A handle returned by MimerBeginStatement[C|8], identifying a prepared statement.

param_no

in

A number identifying the parameter. First parameter is 1.

size_length

in

The size of the BINARY LARGE OBJECT in bytes, or the length of CHARACTER LARGE OBJECT or NATIONAL CHARACTER LARGE OBJECT in characters.

lobhandle

out

The handle to the created large object. If the object was of size 0, a handle is not created. This condition may be detected by comparing with the symbol MIMERNULLHANDLE.

Returns

A negative value indicating an error, or zero if successful.

Return value

Description

MIMER_SUCCESS

Success.

MIMER_CAST_VIOLATION

If the referred database type was not a BINARY LARGE OBJECT, a CHARACTER LARGE OBJECT or a NATIONAL CHARACTER LARGE OBJECT.

MIMER_HANDLE_INVALID

The statementhandle parameter was not recognized as a handle.

MIMER_NONEXISTENT_COLUMN_PARAMETER

The referenced parameter does not exist.

MIMER_NULL_VIOLATION

Cannot assign the null value to a non-nullable parameter

MIMER_OUTOFMEMORY

If not enough memory could be allocated.

MIMER_PARAMETER_NOT_INPUT

The referenced parameter is not an input or input/output parameter, which is required when calling a data input routine.

Notes

Micro API compatible.