cubrid_lob2_seek64

(PECL CUBRID >= 8.4.1)

cubrid_lob2_seek64Déplace le curseur d'un objet LOB

Description

bool cubrid_lob2_seek64 ( resource $lob_identifier , string $offset [, int $origin = CUBRID_CURSOR_CURRENT ] )

La fonction cubrid_lob2_seek64() est utilisée pour déplacer la position du curseur dans un objet LOB d'une valeur fournie par le paramètre offset, dans la direction fournie par le paramètre origin. Si la position offset est plus grande que la capacité de stockage d'un entier, vous pouvez utiliser cette fonction.

Pour définir le paramètre origin, vous pouvez utiliser la constante CUBRID_CURSOR_FIRST pour définir la position du curseur à laquelle on ajoute offset unités depuis le début. Dans ce cas, offset doit être une valeur positive.

Si vous utilisez CUBRID_CURSOR_CURRENT pour le paramètre origin, vous pouvez vous déplacer vers l'arrière, comme vers l'avant. Et le paramètre offset pourra être positif ou négatif.

Si vous utilisez la constante CUBRID_CURSOR_LAST pour le paramètre origin, vous pouvez vous déplacer en arrière de offset unités depuis la fin de l'objet LOB et et le paramètre offset ne pourra être que positif.

Note:

Si vous utilisez cette fonction pour déplacer la position du curseur d'un objet LOB, vous devriez passer le paramètre offset sous la forme d'une chaîne de caractères.

Liste de paramètres

lob_identifier

Un identifiant LOB, récupéré depuis la fonction cubrid_lob2_new() ou depuis le jeu de résultats.

offset

Nombre d'unités de déplacement du curseur.

origin

Ce paramètre peut prendre les valeurs suivantes :

CUBRID_CURSOR_FIRST : déplace le curseur vers l'avant en partant du début.

CUBRID_CURSOR_CURRENT : déplace le curseur vers l'arrière et vers l'avant depuis la position courante.

CUBRID_CURSOR_LAST : déplace le curseur vers l'arrière depuis la fin de l'objet LOB.

Valeurs de retour

TRUE en cas de succès, FALSE si une erreur survient.

Exemples

Exemple #1 Exemple avec cubrid_lob2_seek64()

<?php
<?php
// test_lob (id INT, contents CLOB)
// La longueur des données de doc_1.txt doit être supérieure à 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'); // or 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);
?>

Voir aussi

LoadingChargement en cours