J'ai besoin de passer deux blobs à une procédure Oracle via un fichier PHP. Mais cela est tout à fait du mal ...Passer un BLOB à une procédure Oracle en PHP
Si je fais le prochain, il ne fonctionne pas:
$db_query = new DB_Procedure(
"BEGIN
MY_PRC(
:p_id,
:p_email,
:p_image1,
:p_image2
);
END;");
$param = array (
':p_id' => $p_id,
':p_email' => $p_email,
':p_image1' => $image1,
':p_image2' => $image2
);
$res = $db_query->execute_query($param);
Et il ne fonctionne de cette façon:
$db_query = new DB_Procedure(
"BEGIN
MY_PRC(
:p_id,
:p_email,
".$image1.",
".$image2."
);
END;");
$param = array (
':p_id' => $p_id,
':p_email' => $p_email
);
$res = $db_query->execute_query($param);
j'ai pu TÉLÉCHARGEMENT/dans les tableaux de INSERT blob cette façon:
$sql = "UPDATE MY_TABLE
SET b_image = empty_blob()
WHERE p1 = :p1
AND p2 = :p2
RETURNING b_image INTO :blobdata";
$param = array (':p1' => 'something 1', ':p2' => 'something 2');
$param_blob = array(":blobdata" => null);
$db_query = new DB_Query();
$db_query->setQuery($sql);
$db_query->do_query($param,OCI_ASSOC,$param_array = null,$param_blob);
$param_blob[":blobdata"]->write($p_image);
$db_query->db_commit();
$param_blob[":blobdata"]->close();
Mais je ne sais pas comment l'utiliser pour appeler la procédure correctement.