(PECL ibm_db2 >= 1.6.0)
db2_lob_read — Récupère de grands objets binaires de tailles prédéfinies à chaque invocation
Utilisez db2_lob_read() pour passer à travers une colonne spécifique d'un jeu de résultats et récupérer les grands objets binaires de taille prédéfinie.
stmt
Une ressource stmt
valide contenant des grands objets binaires.
colnum
Un numéro de colonne valide dans le jeu de résultats de la ressource
stmt
.
length
La taille des grands objets binaires à récupérer de la ressource
stmt
.
Retourne le nombre de données spécifiés. 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.