2010-08-19 5 views
1

Je voudrais stocker des images dans la base de données en les convertissant en objets binaires ou je vais les stocker dans un dossier temporaire et enregistrera le chemin dans ma base de données. Mais je suis incapable de faire la programmation, donc peut-on me donner un exemple de code pour enregistrer des images dans la base de données SQL en utilisant Asp.net.Quelqu'un peut dire quelle est la meilleure façon de stocker des images en SQL

+3

Demandé [plusieurs fois avant] (http://stackoverflow.com/search?q=store%2Bimages%2BSQL%2BServer). Un exemple: [Comment stocker et récupérer des images à l'aide de SQL Server (Server Management Studio)] (http://stackoverflow.com/questions/2427767/how-to-store-and-retrieve-images-using-sql-server- server-management-studio) – gbn

Répondre

-1

mieux pour stocker l'image dans un folder et enregistrer le chemin d'accès dans la base de données, ce qui serait beaucoup plus rapide que l'enregistrement dans la base de données.

Remarque ne pas user type image, qui va changer la base de données de formulaire lui-même : read this

+0

Mais cela fait mal aux sauvegardes. La bonne chose à propos de les stocker comme un blob est tout pour l'application est dans la DB, pas éparpillé à travers un système de fichiers. –

+2

Pas vraiment: vous n'avez aucun moyen d'imposer des liens ou que des fichiers/données correspondent. Ce n'est qu'une solution si vous vous souciez vraiment de la qualité et de l'intégrité de vos données. – gbn

+1

SharePoint stocke tout dans la base de données, y compris les images et les documents volumineux. Je dirais donc que c'est tout à fait possible et que les tâches de maintenance comme les sauvegardes seraient beaucoup plus faciles. Et avec le nouveau support de FILESTREAM dans Sql 2008, la performance ne devrait pas poser de problème. – Mhmmd

-2

chemin Stocker les images sur DB au lieu de stocker sous forme binaire, car il nuit à la performance. Dans le serveur SQL, les types de données BLOB sont stockés dans des pages distinctes appelées page LOB_data et sur les pages de données, les pointeurs sont liés à la page LOB_data. Vous ne pouvez pas créer d'index sur un type de données BLOB également. Par conséquent, il affecte négativement la performance. La solution idéale serait de stocker les images dans un lecteur partagé et de stocker le lien de l'image dans la base de données.

+2

-1 ... une autre réponse hors sujet, d'autant plus que les images de la base de données sont pleinement valides et présentent de nombreux avantages. Autrement dit, à moins que vous croyiez que les sauvegardes sont quelque chose pour les gens stupides et pas pour vous. Le stockage DB est le seul moyen de prendre en charge une sauvegarde entièrement intégrée en un seul endroit. – TomTom

+1

si votre souci est la performance essayez d'éviter de stocker des images dans la base de données, ou si vous êtes sur SQL Server 2008, alors vous devez effectuer des sauvegardes séparées pour le stockage filestream – banupriya

+0

J'ai des colonnes filestream sur ma DB et ils sont sauvegardés avec la base de données ... sans rien faire d'autre. –

Questions connexes