The mi_lo_from_buffer() function
The mi_lo_from_buffer() function copies a specified number of bytes from a user-defined buffer to an existing smart large object.
Syntax
mi_integer mi_lo_from_buffer(conn, LO_hdl, size, buffer)
MI_CONNECTION *conn;
MI_LO_HANDLE *LO_hdl;
mi_integer size;
char *buffer;
- 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
- The LO handle for the smart large object into which you want to copy the buffer data.
- size
- An integer that identifies the number of bytes to copy to the smart large object.
- buffer
- A pointer to a user-defined buffer from which you want to copy the data.
Valid in client LIBMI application? | Valid in user-defined routine? |
---|---|
Yes | Yes |
Usage
The mi_lo_from_buffer() function copies up to size bytes from the user-defined buffer into a smart large object that the LO_hdl LO handle references. The write operation to the smart large object starts at a zero-byte offset. This function allows you to write data to a smart large object without opening the smart large object. To use the mi_lo_from_buffer() function to copy data, the smart large object must already exist in an sbspace.
Server only: The mi_lo_from_buffer() 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
- >=0
- The number of bytes copied from the user-defined buffer to the smart large object. This value must always be equal to the size value.
- MI_ERROR
- The function was not successful.