Persönliche Meinung: Ich speichere IMMER Bilder im Dateisystem und speichere nur einen Dateipfad in der Datenbank. In vielen Situationen werden Datenbanken auf einem schnellen Speicher (gelesen: teurer Speicher, 15.000 U/min oder SSD-Laufwerke) gespeichert. Bilder oder andere Dateien können in der Regel auf einem langsameren Speicher (lesen Sie: billiger, größere Laufwerke, 7,2 k RPM Laufwerke) gespeichert werden.
Ich finde dies das Beste, da es ermöglicht, dass die Datenbank klein bleibt. Im Allgemeinen speichern Datenbanken "Daten" gut. Sie können kleine Datenmengen schnell suchen und abrufen. Dateisysteme speichern "Dateien" gut, sie sind optimiert, um größere Datenmengen schnell zu finden und wiederzugewinnen.
Offensichtlich gibt es Kompromisse zu beiden Ansätzen, und es wird keine Einheitsgröße für alle geben; Es kann jedoch einige Anwendungsfälle geben, bei denen das Speichern von Bildern in der Datenbank eine gute Sache ist, wenn sie alle sehr klein sind und Sie nicht viele davon erwarten und Ihre Datenbank sich auf demselben Speichermedium befindet wie Ihre Dateifreigabe , dann ist es wahrscheinlich sinnvoll, die Bilder direkt in die Datenbank zu legen.
Als eine Nebenbemerkung, SQL Server 2008R2 hat einen FileStream-Feldtyp, der das Beste aus beiden Welten bieten kann, ich habe es noch nicht verwendet, so kann ich nicht sagen, wie gut es funktioniert.
Ich liebe es, ein Programmierer mit dem Spitznamen "Crashalot". :-) –