Lire un clob d'oracle avec windows

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : Lire un clob d'oracle avec windows

par Rinaldi » 05 févr. 2007, 16:27

Bonjour Thomas,

Je ne sais pas si tu es encore bloqué sur ce point, même comme j'ai eu le même problème il n'y a pas longtemps, et que j'ai trouvé une solution "convenable" pour mon cas d'utilisation (sans passer par des procédures stockées en PL/SQL).

Pour information, je fais cela avec ORACLE 10i en PHP 4.3.9 (donc pour utiliser en PHP5, il te faudra sûrement renommer les fonctions avec les vieilles règles de nommage en ajoutant les "_" (ex : remplacer ocifetcharray() par oci_fetch_array() )

Code : Tout sélectionner

$oraconnection = ocilogon($bdd_login,$bdd_password,$bdd_service); //juste un exemple où le champ DOCUMENTBLOB contient le fameux CLOB $maRequete = "SELECT ID,DOCUMENTBLOB FROM MATABLEDOCUMENT WHERE ID='33'"; $stmt = ociparse($oraconnection, $maRequete); ociexecute($stmt) or die ("Unable to execute query\n"); $i=0; while ( ocifetchinto($stmt,$row,OCI_NUM) ) { $row[1]->load(); $i++; } //Moi je stocke ma donnée dans un fichier TIFF mais tu peux faire ce que tu veux du tiens bien sûr $file = fopen("toto.tiff","w+"); fwrite($file,$row[1]->load()); fclose($file);

Voilà, j'espère que cela t'aidera un peu.
Bonne journée

Lire un clob d'oracle avec windows

par thomas79 » 09 janv. 2007, 23:06

Je n'arrive pas à lire un clob.
L'insertion par contre fonctionne très bien.
J'utilise php5.1.4 avec odbc bien sur et php_oci8.dll
sous windows.
J'attaque une base oracle 9.

Quand je fait un oci_lob_read du pointeur du lob, le navigateur me sort un page not found.

Si quelqu 'un connait le fonctionnement ou si il y a une astuce...
merci