When I create a list from the web interface, does sharepoint go and create a matching table in the database? If not how is the database structured to absorb new list?

1 Answer 1


No. It creates a new entry in the AllLists table. From there, list entries are created in the AllUserData table, and representation of document data are created in the AllDocs table.

This is largely academic, however, as Microsoft encourages you to treat SharePoint databases (with a handful of exceptions) as black boxes. That is, don't query them and use the SharePoint Object Model instead.

If you need operational information, the best place for that is the SharePoint Protocols and Technology documentation.

  • thank-you. where do columns go then?
    – Rott
    Commented Feb 2, 2017 at 18:48
  • They're defined in the tp_fields column in AllLists. The data in those fields, for each list item, resides in AllUserData in the tp_ColumnSet XML field.
    – user6024
    Commented Feb 2, 2017 at 18:54
  • Microsoft not only discourages you.. You loose support if you mess with data in that SQL Server. But it sure is fun to roam around, it explains a lot why SP (basically 18 years old) is so slow compared to modern solutions. Commented Feb 2, 2017 at 19:04
  • The way it is phrased in support.microsoft.com/en-us/help/841057/… basically says that if the read query is 'causing an issue', then it will be considered unsupported. Stopping that kind of query is easy. It's when you get into the direct modification of data that it becomes a problem.
    – user6024
    Commented Feb 2, 2017 at 19:05

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.