(PECL CUBRID >= 8.4.1)
cubrid_lob2_seek64 — Mover el cursor de un objeto LOB
$lob_identifier
, string $offset
[, int $origin = CUBRID_CURSOR_CURRENT
] ) : bool
La función cubrid_lob2_seek64() se usa para mover la posición
del cursor de un objeto LOB mediante el valor establecido en el argumento
offset, a la dirección establecida en el argumento origin.
Si el offset que se quiere mover es mayor que los datos de tipo
integer que se puedan almacenar, se puede usar esta función.
Para establecer el argumento origin, se puede usar CUBRID_CURSOR_FIRST
para establecer la posición del cursor avanzando offset unidades desde
el primer comienzo. En este caso, offset debe ser un valor positivo.
Si se usa CUBRID_CURSOR_CURRENT para origin, se puede
avanzar o retroceder, por lo que offset puede ser positivo o negativo.
Si se usa CUBRID_CURSOR_LAST para origin, se puede retroceder
offset unidades desde el final del objeto LOB, por lo que offset solamente puede ser positivo.
Nota:
Si se usa esta función para mover la posición del cursor de un objeto LOB, se debería pasar
offsetcomo string.
lob_identifierUn identificador de LOB, como un resultado de cubrid_lob2_new() u obtenido de un conjunto de resultados.
offsetEl número de unidades que se quiere mover el cursor.
originEste parámetro admite los siguientes valores:
CUBRID_CURSOR_FIRST: avanzar desde el primer comienzo.
CUBRID_CURSOR_CURRENT: avanzar o retroceder desde la posición actual del cursor.
CUBRID_CURSOR_LAST: retroceder desde el final del objeto LOB.
TRUE si el proceso tiene éxito y FALSE en caso de error.
Ejemplo #1 Ejemplo de cubrid_lob2_seek64()
<?php
// test_lob (id INT, contents CLOB)
// La longitud de los datos de doc_1.txt debería ser mayor que 20101029056306120215.
$conexión = cubrid_connect("localhost", 33000, "demodb", "dba", "");
cubrid_execute($conexión,"DROP TABLE if exists test_lob");
cubrid_execute($conexión,"CREATE TABLE test_lob (id INT, contents CLOB)");
$petición = cubrid_prepare($conexión, "INSERT INTO test_lob VALUES (?, ?)");
cubrid_bind($petición, 1, 1);
$lob = cubrid_lob2_new($conexión, "clob");
cubrid_lob2_import($lob, "doc_1.txt");
cubrid_lob2_bind($petición, 2, $lob, 'CLOB'); // o cubrid_lob2_bind($petición, 2, $lob);
cubrid_execute($petición);
cubrid_lob2_close($lob);
$petición = cubrid_execute($conexión, "select * from test_lob");
$fila = cubrid_fetch_row($petición, CUBRID_LOB);
$lob = $fila[1];
cubrid_lob2_seek64($lob, "20101029056306120215", CUBRID_CURSOR_FIRST);
$datos = cubrid_lob2_read($lob, 20);
echo $datos."\n";
cubrid_disconnect($conexión);
?>