首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

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句柄。将任何其他指针传递给此例程会导致未定义且可能不合意的行为。

扫码关注腾讯云开发者

领取腾讯云代金券