此函数用于设置已打开进行读取或写入的大对象的下次读取或写入操作的位置。
mi_integer lld_seek(conn, io, offset, whence, new_offset, error) MI_CONNECTION* conn LLD_IO* io; mi_int8* offset; mi_integer whence; mi_int8* new_offset; mi_integer* error;
int lld_seek(io,offset, whence, new_offset, error) LLD_IO* io; EXEC SQL BEGIN DECLARE SECTION; PARAMETER int8* offset; EXEC SQL END DECLARE SECTION; EXEC SQL BEGIN DECLARE SECTION; PARAMETER int8* new_offset; EXEC SQL END DECLARE SECTION; int whence; int* error;
调用此函数之前,必须通过调用 lld_open() 打开大对象。
虽然此函数采用 8 字节偏移量,但此偏移量仍会转换为底层大对象存储系统的相应大小。 例如,如果大对象存储在 32 位文件系统中,那么 8 字节偏移量将转换为 4 字节偏移量,而且只要尝试搜索超过 4 GB 的内容都将发生错误。
对于 API 函数,如果函数成功,将返回 MI_OK,如果失败,那么返回 MI_ERROR。
对于 ESQL/C 函数,如果函数成功,将返回 0,如果失败,那么返回 -1。