cubrid_lob2_seek64

(PECL CUBRID >= 8.4.1)

cubrid_lob2_seek64移动 LOB 对象的游标

描述

cubrid_lob2_seek64(资源 $lob_identifier, 字符串 $offset, 整数 $origin = CUBRID_CURSOR_CURRENT): 布尔值

cubrid_lob2_seek64() 函数用于将 LOB 对象的游标位置移动 offset 参数中设置的值,到 origin 参数中设置的方向。如果要移动的 offset 大于整数数据可以存储的大小,可以使用此函数。

要设置 origin 参数,可以使用 CUBRID_CURSOR_FIRST 将游标位置从第一个开始向前移动 offset 个单位。在这种情况下,offset 必须为正值。

如果将 origin 用于 CUBRID_CURSOR_CURRENT,则可以向前或向后移动。并且 offset 可以为正或负。

如果将 origin 用于 CUBRID_CURSOR_LAST,则可以从 LOB 对象的末尾向后移动 offset 个单位,并且 offset 只能为正。

注意:

如果使用此函数移动 LOB 对象的游标位置,则应将 offset 作为字符串传递。

参数

lob_identifier

LOB 标识符,作为 cubrid_lob2_new() 的结果或从结果集中获取。

offset

要移动游标的单位数。

origin

此参数可以是以下值

CUBRID_CURSOR_FIRST:从第一个开始向前移动。

CUBRID_CURSOR_CURRENT:从当前位置向前或向后移动。

CUBRID_CURSOR_LAST:从 LOB 对象的末尾向后移动。

返回值

成功时返回 true,失败时返回 false

示例

示例 #1 cubrid_lob2_seek64() 示例

<?php
// test_lob (id INT, contents CLOB)
// doc_1.txt 的数据长度应大于 20101029056306120215。

$conn = cubrid_connect("localhost", 33000, "demodb", "dba", "");

cubrid_execute($conn,"DROP TABLE if exists test_lob");
cubrid_execute($conn,"CREATE TABLE test_lob (id INT, contents CLOB)");

$req = cubrid_prepare($conn, "INSERT INTO test_lob VALUES (?, ?)");
cubrid_bind($req, 1, 1);

$lob = cubrid_lob2_new($conn, "clob");
cubrid_lob2_import($lob, "doc_1.txt");
cubrid_lob2_bind($req, 2, $lob, 'CLOB'); // 或者 cubrid_lob2_bind($req, 2, $lob);

cubrid_execute($req);

cubrid_lob2_close($lob);

$req = cubrid_execute($conn, "select * from test_lob");
$row = cubrid_fetch_row($req, CUBRID_LOB);
$lob = $row[1];

cubrid_lob2_seek64($lob, "20101029056306120215", CUBRID_CURSOR_FIRST);
$data = cubrid_lob2_read($lob, 20);
echo
$data."\n";
cubrid_disconnect($conn);
?>

参见

添加注释

用户贡献注释

此页面没有用户贡献的注释。
To Top