A client requested recently that I document each of the SharePoint 2013 Databases and Compare them to the SharePoint 2010 Databases. I used ApexSQL Doc 2012 to document the databases and ApexSQL Diff 2012 to compare the differences . Apex is great I think its the only tool that is works with SQL 2012 at this time. I started with the ContenDbs. Below are screenshots fro the Admin ContentDb. Be sure to check out the Apex SQL Tools when you have the time..
All of the SharePoint 2013 Databases are documented on Codeplex at http://sharepoint2013dbdocs.codeplex.com. I have included a few screenshots below for folks who may not be familiar with database documentation tools like Apex and what they provide..
The first screen shot below is the DB Object Index
The next we will jump down to the datatypes
An just to keep drilling through we find the details of tContentTypeId that start with the properties of the datatype, the lists all of the locations where the column is defined, all of the dependencies and this page lists where the columns are defined and all of the dependencies from tables, procs, and functions with every column, tables, procs, and functions rendered as links that will then provide you with the detail of the property you click on
For instance lets take a table we use quite often the AdminContentDB.dbo.AllDocs table and the first information you will see is the table properties
Next you will see the creation Options and all of the columns that are make up the AdminContentDB.DBO.AllDocs Table along with the detail of each column like Data Type, Max Length, Nullable, Default, isGUID and Sparse
If you would like to understand more about how SharePoint uses the databases to store information and the relationship between stored procedures, triggers, functions and the object model you should check out the SharePoint 2013 Databases Documented on Codeplex, I have included a few of the links for direct downloads below:
But don’t stop, If you think this is pretty cool and even if you Don’t, you should read everything on SharePoint Protocols, I have included a link as reference below: