salut les développeur ,j'ai vraiment besoin de vous
j'ai réalisé une application en java ma base de donnée et sous postgrsql... et ça était necessaire de sauvegarder des fichier dans la base... dans un premier temps je faisais un test en utilisant une table simple composée de deux colonne "nom" de type charcter varying et "image" de type btyea (pour la donnée binaire) en utilisant le code ci dessous tout marche bien le fichier se sauvegarde normalement
mais quand je suis passé au sérieux c a d ma véritable table qui contient 10 colonne + les deux autre colonne les problemes se sont instalés et le fichier ne se sauvegarde pas,quelqu'un aurait une idée sur ce big probléme?? comment puisse je modifier le code pour que ça marche avec une table qui contient plusieurs champs?? :'(
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37 public class ChargerImage { public void insererImage(String nom, String chemin ,String Table) { File file = new File(chemin); try{ //lien vers la base de données String url = "jdbc:postgresql://localhost:5432/gestion"; String driver="org.postgresql.Driver"; String user = "postgres"; String MDP="*****"; Connection connection = DriverManager.getConnection(url,user,MDP); //lien vers notre fichier image FileInputStream stream = new FileInputStream(file); //préparation de l'instruction SQL String sql = "INSERT INTO "+Table+" VALUES (?, ?)"; PreparedStatement statement = connection.prepareStatement(sql); //insertion de l'image statement.setString(1, nom); statement.setBinaryStream(2, stream, (int)file.length()); statement.executeUpdate(); }catch(Exception e){ //traitement des erreurs SQL, IO, etc . JOptionPane.showMessageDialog(null, e.getMessage()); }finally { //fermeture de la connexion, du flux, etc. } }
merci d'avance pour votre aide
Partager