IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

VB.NET Discussion :

Oracle et BLOB pour image dans un picture Box


Sujet :

VB.NET

  1. #1
    Membre habitué
    Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Février 2007
    Messages
    246
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Février 2007
    Messages : 246
    Points : 191
    Points
    191
    Par défaut Oracle et BLOB pour image dans un picture Box
    Bonjour à tous,

    après un long projet en C# qui s'est bien terminé, je passe sur un projet en VB.NET. Le souci c'est que je suis perdu en VB (beauciup moins de fonctions qu'en C#).

    Je souhaite enregistrer les photos et/ou les afficher depuis une base oracle. L'affichage se fait dans un pictureBox. Voici ma requete pour insérer la photo en base:

    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
     
    Sub PHOTO_INSERT(ByVal VVST_BDDCB As String, ByVal VVST_CUSER As String)
     
            R9 = "INSERT"
            R9 = R9 & " INTO UCB.T_CB_Photo"
            R9 = R9 & " (T_CB_Photo.IDENTIFIANT"
            R9 = R9 & ",T_CB_Photo.NUM_DOSSIER"
            R9 = R9 & ",T_CB_Photo.NOM_PHOTO"
            R9 = R9 & ",T_CB_Photo.TYPE_MIME"
            R9 = R9 & ",T_CB_Photo.FICHIER"
            R9 = R9 & ",T_CB_Photo.DATE_CREATION)"
            R9 = R9 & " VALUES ('" & PHOTO_ID & "'"
            R9 = R9 & ",'" & PHOTO_NUM_DOSSIER & "'"
            R9 = R9 & ",'" & PHOTO_NOM_PHOTO & "'"
            R9 = R9 & ",'" & PHOTO_TYPE_MIME & "'"
            R9 = R9 & "," & PHOTO_FICHIER &
            R9 = R9 & ",'" & PHOTO_DATE_CREATION & "')"
     
            Try
                VMUG999.ADO_EXECUTE_SCALAR(VVST_BDDCB, VVST_CUSER, R9, VMUG999.VGST_LIBER)
                If VMUG999.VGST_LIBER <> "" Then
                    VGST_NOERR = "I07901"
                    VMUG999.VGST_LIBER = R9 & VGST_CRLFX & VGST_CRLFX & VMUG999.VGST_LIBER
                    VMUG999.VGNN_ARRET = 1
                    TRAIT_ERREUR_ADO(VGST_NOERR)
                    End
                End If
            Catch VGNN_EXCEP As Exception
                VGST_NOERR = "I07901"
                VMUG999.VGST_LIBER = R9 & VGST_CRLFX & VGST_CRLFX & VGNN_EXCEP.ToString
                VMUG999.VGNN_ARRET = 1
                TRAIT_ERREUR_ADO(VGST_NOERR)
                End
            End Try
        End Sub
    mais j'ai une erreur
    Erreur 9 L'opérateur '&' n'est pas défini pour les types 'String' et 'Tableau à 1 dimension(s) de Byte'. D:\Mes Documents\Visual Studio 2010\Projects\VPCB20\VMCB103.vb 2595 14 VPCB20
    pour la valeur "PHOTO_FICHIER" qui est un Byte() et T_CB_Photo.FICHIER est un BLOB. Voyez-vous pourquoi j'ai cette erreur ?

  2. #2
    Membre confirmé
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Mars 2011
    Messages
    453
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2011
    Messages : 453
    Points : 478
    Points
    478
    Par défaut
    Je ne suis pas spécialiste Oracle vu que je ne me sers que de SQL Server, mais je te conseille d'utiliser une requête paramétrée (pour des facilités de lecture et de sécurité).

    En tout cas j'ai trouvé ça, c'est du C#, tu n'as plus qu'à traduire...

  3. #3
    Membre habitué
    Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Février 2007
    Messages
    246
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Février 2007
    Messages : 246
    Points : 191
    Points
    191
    Par défaut
    mon image ne s'affiche pas. Ci dessous, mon code source.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
     Dim Bitmap As New Bitmap(VLOB_FOPEN.FileName)
                        PicturePhoto.Image = Bitmap
    En pas à pas, les paramètres passent bien, l'image est bien allouée, mais rien ne s'affiche à l'écran. Une idée ?

  4. #4
    Membre habitué
    Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Février 2007
    Messages
    246
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Février 2007
    Messages : 246
    Points : 191
    Points
    191
    Par défaut
    j'ai aussi une autre question, je dois extraire une image d'un champs BLOB (j'utilise une base ORACLE), puis sauvegarder cette image en jpeg. Comment peut-on faire cela ?

    Merci d'avance

  5. #5
    Nouveau membre du Club
    Inscrit en
    Août 2002
    Messages
    25
    Détails du profil
    Informations forums :
    Inscription : Août 2002
    Messages : 25
    Points : 37
    Points
    37
    Par défaut
    Bonjour,

    En fait, les blob d'oracle sont des tableaux de bytes.
    Il faut travailler avec les classes MemoryStream et Bitmap.
    Exemple pour transformer un champ blob en bitmap : New Bitmap(New System.IO.MemoryStream(<ton_champ_blob>))

Discussions similaires

  1. [Débutant] [C#]Charger une image dans une picture box
    Par Pas_d_Idee dans le forum Windows Forms
    Réponses: 6
    Dernier message: 21/09/2012, 01h05
  2. Autosize d'une image dans un Picture
    Par Seth77 dans le forum C#
    Réponses: 2
    Dernier message: 16/08/2007, 20h42
  3. MAJ Image dans Scrollable Picture
    Par psal78 dans le forum AWT/Swing
    Réponses: 3
    Dernier message: 20/06/2007, 14h19
  4. [MFC]Afficher une image dans un Picture
    Par Cirdan Telemnar dans le forum MFC
    Réponses: 3
    Dernier message: 24/04/2006, 16h40
  5. Champ BLOB pour IMAGE format JPG and TImage et Interbase
    Par alain_bastien dans le forum InterBase
    Réponses: 1
    Dernier message: 20/10/2004, 16h15

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo