NAME
sqlite3_blob_read —
Read Data From A
BLOB Incrementally
SYNOPSIS
int
sqlite3_blob_read(
sqlite3_blob *,
void *Z,
int N,
int iOffset);
DESCRIPTION
This function is used to read data from an open BLOB handle into a
caller-supplied buffer. N bytes of data are copied into buffer Z from the open
BLOB, starting at offset iOffset.
If offset iOffset is less than N bytes from the end of the BLOB, SQLITE_ERROR is
returned and no data is read. If N or iOffset is less than zero, SQLITE_ERROR
is returned and no data is read. The size of the blob (and hence the maximum
value of N+iOffset) can be determined using the sqlite3_blob_bytes()
interface.
An attempt to read from an expired BLOB handle fails with an error code of
SQLITE_ABORT.
On success, sqlite3_blob_read() returns SQLITE_OK. Otherwise, an error code or
an extended error code is returned.
This routine only works on a BLOB handle which has been created by a prior
successful call to sqlite3_blob_open() and which has not been closed by
sqlite3_blob_close(). Passing any other pointer in to this routine results in
undefined and probably undesirable behavior.
SEE ALSO
sqlite3_blob(3),
sqlite3_blob_bytes(3),
sqlite3_blob_close(3),
sqlite3_blob_open(3),
sqlite3_blob_write(3),
SQLITE_OK(3)