Sqlserver
 sql >> Datenbank >  >> RDS >> Sqlserver

So speichern Sie verschiedene Dokumenttypen

FILESTREAM oder VARBINARY(MAX) , aber Sie sollten die Vor- und Nachteile gegenüber dem Speichern der Dateien im Dateisystem und nur einem Zeiger auf die Datei in der Datenbank abwägen.

Vorteile für das Speichern von Dateien in der Datenbank:

  • Transaktionskonsistenz
  • Sicherheit (vorausgesetzt, Sie brauchen sie und Ihre Datenbank ist sowieso nicht weit offen)

Nachteile:

  • viel größere Datenbankdateien + Backups (was kostspielig sein kann, wenn Sie auf dem Speicher einer anderen Person hosten)
  • viel schwieriger zu debuggen (Sie können in Management Studio nicht „Dok. AUS Tabelle AUSWÄHLEN“ sagen und ein Word-Popup anzeigen lassen)
  • schwieriger, den Benutzern die Dokumente zu präsentieren (und ihnen das Hochladen zu ermöglichen) – anstatt nur einen Link zu einer Datei im Dateisystem anzuzeigen, müssen Sie eine App erstellen, die die Datei aufnimmt und in der Datenbank speichert, und zieht die Datei aus der Datenbank, um sie dem Benutzer zu präsentieren.

In SQL Server 2012 Dateitabelle bietet einen brauchbareren Hybrid.