The mi_lo_invalidate() function

The mi_lo_invalidate() function marks the LO handle as invalid.

Syntax

mi_integer mi_lo_invalidate(conn, LO_hdl)
   MI_CONNECTION *conn;
   MI_LO_HANDLE *LO_hdl;
conn
This value is one of the following connection values:

A pointer to a connection descriptor established by a previous call to mi_open(), mi_server_connect(), or mi_server_reconnect().

A NULL-valued pointer (database server only)

LO_hdl
A pointer to the LO handle to invalidate.
Valid in client LIBMI application? Valid in user-defined routine?
Yes Yes

Usage

The mi_lo_invalidate() function marks as invalid the LO handle that LO_hdl references. You can use mi_lo_invalidate() in the support function of an opaque data type to make smart large objects invalid. It enables these support functions to invalidate an LO handle before it is stored. You might want to mark an LO handle as invalid to indicate that it is not active. The lohandles() support function can unambiguously determine which MI_LO_HANDLE values are valid for the given instance of the opaque type.

If mi_lo_invalidate() fails due to an invalid connection, callback functions are invoked. If it fails due to an invalid handle, callbacks are not started.

Server only: The mi_lo_invalidate() function does not need a connection descriptor to execute. If your UDR does not need a valid connection for other operations, you can specify a NULL-valued pointer for the conn parameter to establish a NULL connection. For information about the advantages of a NULL connection, see the Informix® DataBlade® API Programmer's Guide.

Return values

MI_OK
The function was successful; the LO handle was successfully invalidated.
MI_ERROR
The function was not successful; the connection was invalid or the handle was invalid.