1

I have a question that was already asked a long time ago but was not answered:

Sharepoint 2013 stores documents in the WSS_Content database in a table called DocStreams.

Up until Sharepoint 2010, files where stored in a single row in a VarBinary column. Since Sharepoint 2013, files are stored in multiple rows using Shredded Blob storage.

Does anyone know how I can piece together the files from the shredded storage in c#?

I have found many exampled online to extract files from SharePoint 2010 and earlier but they only support a files content being stored in 1 row.

Original Q: Extracting Files from Sharepoint 2013 WSS_Content Database?

So I am wondering if there is an answer now.

Thank You.

Community
  • 1
  • 1
Guid2015
  • 57
  • 11
  • No-one would ever ask you to hack into an undocumented database to extract blobs. Besides, who said the files are there instead of eg outside the databse using SQL Server's FILESTREAM feature? Or another external storage service? What are you *really* trying to do? Documents *are* available through a URL, libraries *are* accessible as file shares through WebDAV. You could even use `copy` from the command line to copy a file from a library's shared folder to some other location – Panagiotis Kanavos Apr 05 '16 at 14:49

1 Answers1

1

I wonder if the business requirement is just to get the files from the database directly ?!

In case it is not, please consider using the SPFile object, and feel free of being the file stored in one location or shredded. SharePoint will handle it for you :)

for example, please refer back to MSDN about SPFile

Also please have a look at this post which discuss in details the mechanism on how shredded files are working behind the scene.

Ahmed Salem
  • 50
  • 1
  • 8