sql >> Database >  >> RDS >> Sqlserver

Verschillende documenttypes opslaan

FILESTREAM of VARBINARY(MAX) , maar u moet de voor- en nadelen hiervan overwegen versus het opslaan van de bestanden op het bestandssysteem en alleen een verwijzing naar het bestand in de database.

Voordelen voor het opslaan van bestanden in de database:

  • consistentie van transacties
  • beveiliging (ervan uitgaande dat je het nodig hebt en dat je database toch niet wijd open is)

Nadelen:

  • veel grotere databasebestanden + back-ups (wat kostbaar kan zijn als u host op de opslag van iemand anders)
  • veel moeilijker te debuggen (je kunt niet "SELECT doc FROM table" zeggen in Management Studio en Word laten verschijnen)
  • moeilijker om de documenten aan gebruikers te presenteren (en ze te laten uploaden) - in plaats van alleen een link naar een bestand op het bestandssysteem te presenteren, moet je een app bouwen die het bestand neemt en opslaat in de database, en haalt het bestand uit de database om het aan de gebruiker te presenteren.

In SQL Server 2012 FileTable zal een meer bruikbare hybride bieden.



  1. PostgreSQL:een geldig voorbeeld voor variabele toewijzing?

  2. Hoe zeg je maakprocedure als deze niet bestaat in MySQL

  3. Waarom krijg ik Kan parameter 2 niet doorgeven door een verwijzingsfout wanneer ik bindParam gebruik met een constante waarde?

  4. Liferay:Geen geschikte driver gevonden