PHP8 cubrid_lob2_seek
(PECL CUBRID >= 8.4.1)
cubrid_lob2_seek — 移动 lob 对象的光标
说明
cubrid_lob2_seek(resource $lob_identifier, int $offset, int $origin = CUBRID_CURSOR_CURRENT): bool
cubrid_lob2_seek() 函数用于移动光标 将 LOB 对象的位置按参数中设置的值,更改为参数中设置的方向。offsetorigin
要设置参数,可以使用 CUBRID_CURSOR_FIRST 设置光标位置向前移动单位 第一个开始。在这种情况下,必须为正值。originoffsetoffset
如果将 CUBRID_CURSOR_CURRENT 用于 ,则可以移动 向前或向后。可以是正的,也可以是负的。originoffset
如果将 CUBRID_CURSOR_LAST 用于 ,则可以移动 从 LOB 对象末尾向后的单位,只能是正数。originoffsetoffset
参数
lob_identifier
作为 cubrid_lob2_new() 结果的 Lob 标识符或从结果集中获取。
offset
要移动光标的单位数。
origin
此参数可以是以下值:
CUBRID_CURSOR_FIRST:从头开始。
CUBRID_CURSOR_CURRENT:从当前位置向前或向后移动。
CUBRID_CURSOR_LAST:在 LOB 对象的末尾向后移动。
返回值
成功时返回 true, 或者在失败时返回 false。
示例
示例 #1 cubrid_lob2_seek() example
<?php
// test_lob (id INT, contents CLOB)
$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(2, ?)");
$lob = cubrid_lob2_new($conn, 'CLOB');
$len = cubrid_lob2_write($lob, "Hello world");
cubrid_lob2_seek($lob, 0, CUBRID_CURSOR_LAST);
cubrid_lob2_write($lob, "beautiful");
cubrid_lob2_seek($lob, 15, CUBRID_CURSOR_FIRST);
$data = cubrid_lob2_read($lob, 5);
echo $data."\n";
cubrid_lob2_bind($req, 1, $lob);
cubrid_execute($req);
cubrid_disconnect($conn);
?>
参见
- cubrid_lob2_read() - 从 BLOB/CLOB 数据读取
- cubrid_lob2_write() - 写入 lob 对象
- cubrid_lob2_seek64() - 移动 lob 对象的光标
- cubrid_lob2_tell() - 告知 LOB 对象的光标位置
- cubrid_lob2_tell64() - 告知 LOB 对象的光标位置
- cubrid_lob2_size() - 获取 lob 对象的大小
- cubrid_lob2_size64() - 获取 lob 对象的大小