2009-10-08 9 views
0

J'ai des éléments de base de données qui ont 2 ressources externes: A.) images et B.) fichiers HTML.Stocker des ressources externes dans DB?

Devraient-ils être stockés en tant que colonnes dans la base de données ou la base de données devrait-elle contenir des pointeurs vers le système de fichiers?

Quels sont les avantages et les inconvénients de chaque approche?

fichiers HTML sont 200k par article, et les images sont 200k par article (5 - 10 photos ou si max)

Merci.

+0

Ceci est un doublon de plusieurs questions. Voir http://stackoverflow.com/questions/3748/storing-images-in-db-yea-or-nay et http://stackoverflow.com/questions/8952/storing-a-file-in-a-database -as-opposé-au-système de fichiers. –

Répondre

0

Avec tout, "Cela dépend". Personnellement, si vous avez une bonne raison de les stocker dans la base de données, il est fortement recommandé de les stocker dans la base de données sous forme de colonnes image/ntext/varbinary (blob). Je préconiserais de ne pas stocker les chemins d'accès au système de fichiers local, car cela rendrait difficile le déplacement de votre base de données vers une machine différente, car vos chemins stockés dans la base de données seront très probablement invalides.

Vous souhaiterez peut-être étudier le modificateur de colonne BLOB FILESTREAM de SQL2008. Un bref résumé de la fonctionnalité peut être trouvé à http://blogs.msdn.com/pedram/archive/2007/06/04/store-any-data-in-sql-server-2008-katmai.aspx et plus de détails que vous pouvez secouer un bâton à: http://technet.microsoft.com/en-us/library/bb933993.aspx

Questions connexes