web-dev-qa-db-fra.com

Quel type de données est le mieux pour enregistrer des images dans une base de données?

Nous développons un site Web de commerce électronique utilisant Asp.net et un serveur SQL. Le client peut visualiser et commander une grande variété d’interrupteurs et de luminaires. 

Comme nous devons afficher des images de ces produits pour chaque catégorie, le nombre d'images dont nous avons besoin peut atteindre 500. Nous sommes un peu perplexes de savoir si nous devons enregistrer ces images au format Type d'image en SQL ou s'il vaut mieux stocker les chemin de l'image. Dans ce dernier cas, est-il préférable de stocker toutes les images dans un seul dossier?

S'il vous plaît conseiller sur le meilleur plan d'action. 

15
Supreeth sup

Le type de données image n'a rien à voir avec les images. Je ne sais pas pourquoi il existe. C'est un héritage.

Stockez les images comme vous stockeriez n'importe quel autre blob: varbinary(max).

La question de savoir si les blobs doivent être stockés dans la base de données a déjà été abordée. Notez que les réponses sont très subjectives et subjectives. Il est clairement faux de dire qu'il faut toujours stocker les blobs à l'intérieur et à l'extérieur de la base de données.

11
usr

Vous pouvez utiliser les types de données ci-dessous pour BLOBs sur un serveur SQL:

Binary: taille fixe allant jusqu'à 8 000 octets.

VarBinary(n): taille de variable allant jusqu'à 8 000 octets (n spécifie la taille maximale).

VarBinary(max): taille variable, limite de 2 Go.

Qu'est-ce qu'un BLOB?

7
Hasan Fathi

Je suggérerais que vous puissiez enregistrer les URL de l'image dans la base de données, en regard de votre identifiant de produit. Mais si vous demandez jusqu'à 500 URL à la fois, je suggérerais peut-être d'introduire un CDN au milieu pour mettre en cache les URL de l'image. Aura un impact important sur la performance

3
Lee Swainsbury

Stocker une image dans un dossier et le chemin de ce fichier sur un serveur SQL est une bonne idée. Mais cela peut provoquer le même nom de fichier et le remplacer. donc sauvé avec horodatage. Je pense que cela vous aidera à faire autrement que de sauvegarder en Image Type de données du serveur SQL.

Pour sauvegarder des données sur un serveur SQL Type de données image Suivez Guildline sur le lien ci-dessous.

Aller au lien

1
Mayur Khairnar

Pensons à ce sujet. Si vous enregistrez dans un champ blob, veillez à créer un groupe de fichiers distinct pour ces données. Si vous décidez de stocker en tant que chemin. Utilisez filestream. La base de données gérera le chemin. Il sera traité dans les transactions. Il sera sauvegardé avec la base de données.

0
vbjay