Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
2289 connectés 

  FORUM HardWare.fr
  Programmation
  Java

  [JSP/SQL] insert dans un BLOB

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

[JSP/SQL] insert dans un BLOB

n°1760942
cannelline
Posté le 17-07-2008 à 15:27:41  profilanswer
 

bonjour a tous,
 
J'ai une table MySQL avec un champ BLOB dedans. Apres moultes recherches, j'ai compris qu'on ne pouvait pas inserer un BLOB avec une ligne de commande SQL puisqu'on ne peut pas specifier de valeur binaire dans ces cas la.
J'ai bien essaye :  

Code :
  1. update table_photo set photo=LOAD_FILE('/home/moi/nophoto_test.jpg') where id='monid';


 
et j'ai l'erreur : ERROR 13: Can't get stat of '/home/moi/nophoto_test.jpg' (Errcode: 2)
 
J'ai donc voulu faire une appli JSP en 2 pages : la premiere est un formulaire avec un input type=file pour recuperer l'image a inserer, la seconde recupere le fichier et l'insere sous forme d'input stream. mon probleme est que je n'arrive pas a recuperer le fichier uploade sous forme de stream... je suis en methode POST et j'ai bien rempli le enctype.
 
 

Code :
  1. <form type="POST" ENCTYPE="multipart/form-data" action="process_photo.jsp"> 
  2.     <input type="file" name="input_photo"/>
  3. </form>


 
 

Code :
  1. File filedata = new File(request.getParameter("input_photo" ));
  2. InputStream fin = new FileInputStream(filedata);
  3. statement = Conn.createStatement();
  4. PreparedStatement pre = Conn.prepareStatement("update table_photo set photo='?' where id='monid'" );
  5. pre.setBinaryStream(1,fin, (int)filedata.length());


 
et si je le mets sur le serveur et que je fais :
 

Code :
  1. File filedata = new File("/images/nophoto.jpg" );
  2. InputStream fin = new FileInputStream(filedata);
  3. statement = Conn.createStatement();
  4. PreparedStatement pre = Conn.prepareStatement("update table_photo set photo='?' where id='monid'" );
  5. pre.setBinaryStream(1,fin, (int)filedata.length());


 
j'ai l'erreur : images/nophoto.jpg (No such file or directory) alors que je peux y acceder sans pb en mettant l'adresse dans le browser.
 
Alors j'aimerais bien une methode simple pour remplir ce fichu champ BLOB  :fou:  
 
merci de votre aide  :hello:


Message édité par cannelline le 17-07-2008 à 15:28:25
mood
Publicité
Posté le 17-07-2008 à 15:27:41  profilanswer
 

n°1762020
Smanux
Posté le 19-07-2008 à 18:55:19  profilanswer
 

Le fichier n'est pas physiquement au chemin /images/nophoto.jpg sur le serveur, il faut donner le chemin complet, et pas celui relatif à la racine du site web.

n°1762543
cannelline
Posté le 21-07-2008 à 14:20:34  profilanswer
 

En fait, si je met le chemin absolu, j'ai une erreur access denied...
 
Je pense que ma solution serait de reussir a recuperer le stram du fichier par la method post en passant par un formulaire. Des experiences a ce sujet ??


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  Java

  [JSP/SQL] insert dans un BLOB

 

Sujets relatifs
[Resolu] asp.net/C#/SQl server2005 affichage resultats rechercheexport table SQL vers fichier
[PHP/SQL] Mettre à jour des données dans un tableau arraycondition where : recherche par mot clé
[SQL Server] Outrepasser la limite des 8000 bytes pour OpenQueryrécupérer un ID auto-incrémenté après son insert
[SQL server] Recherche sur champ calculé[Résolu] SQL liste meilleur score pour 1 joueur
[SQL] problème requêteSQL Server - BULK INSERT sur un fichier csv avec guillemets
Plus de sujets relatifs à : [JSP/SQL] insert dans un BLOB


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR