Home | Previous Page | Next Page   Function Descriptions >

mi_streamread_row( )

The mi_streamread_row( ) function reads a row structure (row type) value from a stream, converting any difference in the stream representation to that of the internal representation.

Syntax

mi_integer mi_streamread_row(strm_desc, rowstruc_dptr, fparam_ptr)
   MI_STREAM *strm_desc;
   MI_ROW **rowstruc_dptr;
   MI_FPARAM *fparam_ptr;
strm_desc
is a pointer to the stream descriptor for the open stream from which to read the row structure (MI_ROW).
rowstruc_dptr
is a pointer to the buffer into which to copy the address of the row structure.
fparam_ptr
is a pointer to the MI_FPARAM structure for the user-defined routine that calls mi_streamread_row( ).
Valid in Client LIBMI Application? Valid in User-Defined Routine?
No Yes
Important:
Enterprise Replication does not support this function.

Usage

The mi_streamread_row( ) function reads a row structure from the stream that strm_desc references. The function reads the row structure from the stream and puts its address in the buffer that *rowstruc_dptr references. The read operation begins at the current stream seek position. You can use mi_stream_tell( ) or mi_stream_getpos( ) to obtain this seek position.

The mi_streamread_row( ) function is a constructor function for a row structure. It allocates memory for this row structure in the current memory duration.

This function is useful in a streamread( ) support function of an opaque data type that contains a row structure (MI_ROW).

Important:
The mi_streamread_row( ) function requires the caller to have an open connection to the database server.

Return Values

>=0
is the actual number of bytes that the function has read from the open stream to the value that rowstruc_dptr references.
MI_STREAM_EEOF
indicates that the end of the stream has been reached without any errors.
MI_STREAM_EBADARG
indicates that the stream descriptor that strm_desc references or the value that rowstruc_dptr references is invalid.
MI_ERROR
indicates that the function was not successful.

Related Topics

See also the descriptions of mi_stream_getpos( ), mi_stream_read( ), mi_stream_tell( ), and mi_streamwrite_row( ).

For more information on the use of mi_streamread_row( ) in a streamread( ) support function, see the IBM Informix: DataBlade API Programmer's Guide.

Home | [ Top of Page | Previous Page | Next Page | Contents | Index ]