Small. Fast. Reliable.
Choose any three.

SQLite C接口

从BLOB递增读取数据

int sqlite3_blob_read(sqlite3_blob *,void * Z,int N,int iOffset);

此函数用于将数据从打开的BLOB句柄读取到调用方提供的缓冲区中。从偏移量iOffset开始,将N个字节的数据从打开的BLOB复制到缓冲区Z中。

如果偏移量iOffset从BLOB的末尾开始小于N个字节, 则返回SQLITE_ERROR且不读取任何数据。如果N或iOffset小于零,则返回SQLITE_ERROR且不读取任何数据。可以使用sqlite3_blob_bytes()接口确定Blob的大小(以及N + iOffset的最大值

尝试从过期的BLOB句柄读取失败,错误代码为SQLITE_ABORT

成功时,sqlite3_blob_read()返回SQLITE_OK。否则,将返回错误代码扩展错误代码

此例程仅适用于BLOB句柄,该句柄是由先前对sqlite3_blob_open()的成功调用创建的,并且尚未由sqlite3_blob_close()关闭。将任何其他指针传递给该例程将导致未定义的行为,并且可能是不良行为。

另请参见:sqlite3_blob_write()

另请参见 对象常量函数的列表