Read Data From A BLOB Incrementally
Read Data From A BLOB Incrementally
int sqlite3_blob_read(sqlite3_blob *, void *Z, int N, int iOffset
该函数用于将数据从打开的BLOB句柄读取到调用者提供的缓冲区中。将N字节的数据从开放的BLOB复制到缓冲区Z中,从偏移iOffset开始。
如果偏移量iOffset小于BLOB末尾的N个字节,则返回SQLITE_ERROR并且不读取任何数据。如果N或iOffset小于零,则返回SQLITE_ERROR并且不读取任何数据。blob的大小(以及因此N + iOffset的最大值)可以使用sqlite3_blob_bytes()接口确定。
尝试从过期的BLOB句柄读取失败,错误代码为SQLITE_ABORT。
成功时,sqlite3_blob_read()返回SQLITE_OK。否则,将返回错误代码或扩展错误代码。
此例程仅适用于通过先前成功调用sqlite3_blob_open()创建且尚未由sqlite3_blob_close()关闭的BLOB句柄。将任何其他指针传递给此例程会导致未定义且可能不合意的行为。