Sqlserver
 sql >> Database >  >> RDS >> Sqlserver

Come memorizzare diversi tipi di documenti

FILESTREAM o VARBINARY(MAX) , ma dovresti considerare i pro ei contro di farlo rispetto alla memorizzazione dei file sul file system e solo un puntatore al file nel database.

Pro per la memorizzazione dei file nel database:

  • coerenza transazionale
  • sicurezza (supponendo che tu ne abbia bisogno e che il tuo database non sia comunque completamente aperto)

Contro:

  • File di database molto più grandi + backup (che possono essere costosi se stai ospitando nello spazio di archiviazione di qualcun altro)
  • Molto più difficile da eseguire il debug (non puoi dire "SELECT doc FROM table" in Management Studio e visualizzare Word)
  • più difficile presentare i documenti agli utenti (e consentirne il caricamento) - invece di presentare semplicemente un collegamento a un file nel file system, è necessario creare un'app che prenda il file e lo memorizzi nel database, e estrae il file dal database per presentarlo all'utente.

In SQL Server 2012, FileTable offrirà un ibrido più utilizzabile.