(PECL ibm_db2 >= 1.6.0)
db2_lob_read — Récupère une taille définie par l'utilisateur de fichiers LOB à chaque invocation
La fonction db2_lob_read() permet d'itérer à travers une colonne spécifique d'un jeu de résultats et de récupérer une taille définie par l'utilisateur de données LOB.
stmtstmt valide contenant des données LOB.
colnumstmt.
lengthstmt.
Retourne la quantité de données spécifiée par l'utilisateur. Retourne false
si les données ne peuvent être récupérées.
Exemple #1 Itère à travers différents types de données
<?php
/* Paramètres de Connexion */
$db = 'SAMPLE';
$username = 'db2inst1';
$password = 'ibmdb2';
/* Récupération de la Ressource de Connexion */
$conn = db2_connect($db,$username,$password);
if ($conn) {
$drop = 'DROP TABLE clob_stream';
$result = @db2_exec( $conn, $drop );
$create = 'CREATE TABLE clob_stream (id INTEGER, my_clob CLOB)';
$result = db2_exec( $conn, $create );
$variable = "";
$stmt = db2_prepare($conn, "INSERT INTO clob_stream (id,my_clob) VALUES (1, ?)");
$variable = "THIS IS A CLOB TEST. THIS IS A CLOB TEST.";
db2_bind_param($stmt, 1, "variable", DB2_PARAM_IN);
db2_execute($stmt);
$sql = "SELECT id,my_clob FROM clob_stream";
$result = db2_prepare($conn, $sql);
db2_execute($result);
db2_fetch_row($result);
$i = 0;
/* Lecture des grands objets */
while ($data = db2_lob_read($result, 2, 6)) {
echo "Boucle $i : $data\n";
$i = $i + 1;
}
$drop = 'DROP TABLE blob_stream';
$result = @db2_exec( $conn, $drop );
$create = 'CREATE TABLE blob_stream (id INTEGER, my_blob CLOB)';
$result = db2_exec( $conn, $create );
$variable = "";
$stmt = db2_prepare($conn, "INSERT INTO blob_stream (id,my_blob) VALUES (1, ?)");
$variable = "THIS IS A BLOB TEST. THIS IS A BLOB TEST.";
db2_bind_param($stmt, 1, "variable", DB2_PARAM_IN);
db2_execute($stmt);
$sql = "SELECT id,my_blob FROM blob_stream";
$result = db2_prepare($conn, $sql);
db2_execute($result);
db2_fetch_row($result);
$i = 0;
/* Lecture des grands objets */
while ($data = db2_lob_read($result, 2, 6)) {
echo "Boucle $i : $data\n";
$i = $i + 1;
}
} else {
echo 'aucune connexion : ' . db2_conn_errormsg();
}
?>L'exemple ci-dessus va afficher :
Boucle 0 : THIS I Boucle 1 : S A CL Boucle 2 : OB TES Boucle 3 : T. THI Boucle 4 : S IS A Boucle 5 : CLOB Boucle 6 : TEST. Boucle 0 : THIS I Boucle 1 : S A BL Boucle 2 : OB TES Boucle 3 : T. THI Boucle 4 : S IS A Boucle 5 : BLOB Boucle 6 : TEST.