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

C# Discussion :

Sauver une image en MySql


Sujet :

C#

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre expérimenté
    Profil pro
    Mangeur de gauffre
    Inscrit en
    Octobre 2007
    Messages
    4 413
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations professionnelles :
    Activité : Mangeur de gauffre

    Informations forums :
    Inscription : Octobre 2007
    Messages : 4 413
    Par défaut Sauver une image en MySql
    Bonjour

    Considérant que j'ai une image de Type Image en memoire, je cherche la maniere la plus saine de sauver cette image en DB
    Dans la DB j'ai définis un champ mediumblop (ca devrait suffire) pour la cause

    Je suppose qu'il y a deux maniere

    Soit sauver directement l'image comme un ByteArray

    Avantage : pas besoin de se preocuper du type c'est une 'Image'
    Inconvénient : Pas de compression

    Autre possibilité :
    Sauver l'Image dans un fichier avec un type de compression "jpg, png"
    Sauver le contenu de ce fichier dans la db

    Avantage : l'image est compressée et de type fichier portable
    Inconvénient : plus de chipo, nécessité de sauver le type


    Que me conseillez-vous ?

  2. #2
    Membre Expert Avatar de Lorenzo77
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    1 472
    Détails du profil
    Informations personnelles :
    Âge : 53
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Mai 2006
    Messages : 1 472
    Par défaut
    salut olibara,


    la question est : que veux tu faire de ton image ensuite ?

    généralement quand on a une image, on génère un fichier que l'on stocke et c'est juste le lien pointant vers ce fichier qui est stocké (dans le but de minimiser la taille de la BD)
    j'ai pas encore vu, stocker les bits d'une image directement dans une BD .... mais ca dépend aussi de ce que tu veux en faire ensuite.

  3. #3
    Membre expérimenté
    Profil pro
    Mangeur de gauffre
    Inscrit en
    Octobre 2007
    Messages
    4 413
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations professionnelles :
    Activité : Mangeur de gauffre

    Informations forums :
    Inscription : Octobre 2007
    Messages : 4 413
    Par défaut
    généralement quand on a une image, on génère un fichier que l'on stocke et c'est juste le lien pointant vers ce fichier qui est stocké
    C'etait ma premiere idée mail elle ne resiste pas beaucoup a l'analyse
    - Accessibilité de l'image en réseau
    - Mise a jour remplacement de l'image
    - Back-Up

    Etc ...
    J'ai déja fait ce genre de chose et c'est asser casse gueule, la solution DB est de loin la plus souple

    j'ai pas encore vu, stocker les bits d'une image directement dans une BD
    Ah bon ? pourtant c'est une des premire définition d'usage d'un blob

  4. #4
    Membre Expert Avatar de Lorenzo77
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    1 472
    Détails du profil
    Informations personnelles :
    Âge : 53
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Mai 2006
    Messages : 1 472
    Par défaut
    j'utilise principalement les colonnes BLOB quand la case est importante pour la recherche de chaine .. a ma connaissance c'est la seule différence avec les colonnes TEXT ou les colonnes CHAR et VARCHAR avec l'attribut binary.

    si tu n'as pas de contrainte de taille sur ta BD et vu tes besoins, stocker l'image dans le format dans laquelle elle sera utilisé parait le plus logique, ca évitera tous les traitements a chaque demande.

  5. #5
    Membre expérimenté
    Profil pro
    Mangeur de gauffre
    Inscrit en
    Octobre 2007
    Messages
    4 413
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations professionnelles :
    Activité : Mangeur de gauffre

    Informations forums :
    Inscription : Octobre 2007
    Messages : 4 413
    Par défaut
    Franchement, je ne sais pas

    J'aimerais trouver qq qui a eu peu d'expèrience sur ce sujet pour voir ce qu'il en pense

    Mais a priori je fais essayer de sauver en jpg directement vers le blob

  6. #6
    Expert confirmé Avatar de Graffito
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    5 993
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2006
    Messages : 5 993
    Par défaut
    Nous utilisons aussi la solution "Jpg directement dans les Blob" pour les images.

    Toutefois, on isole les images dans une table séparée pour éviter de faire gonfler la table de base qui comporte les champs de données (texte, numérique, booléen, ...) et aussi pour faire des SELECT * dans cette table de base sans charger les images. Cela permet accessoirement de faire correspondre un nombre variable d'images au même enregistrement de données.

Discussions similaires

  1. inserer une image dans MYSQL et récupérer avec JAVA
    Par ulysse031 dans le forum AWT/Swing
    Réponses: 39
    Dernier message: 26/07/2010, 11h50
  2. inserer une image avec Mysql
    Par ulysse031 dans le forum Outils
    Réponses: 9
    Dernier message: 04/04/2007, 01h06
  3. [Débutant]insérer une image dans Mysql
    Par olivier94 dans le forum SQL Procédural
    Réponses: 4
    Dernier message: 05/02/2007, 11h08
  4. [C# 2.0] Comment sauver une image dans un fichier Xml ?
    Par Louis-Guillaume Morand dans le forum C#
    Réponses: 4
    Dernier message: 08/09/2006, 17h47
  5. sauver une image en png
    Par greg778 dans le forum Langage
    Réponses: 7
    Dernier message: 13/11/2005, 17h22

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