前段时间在看SPS2007的时候,我从外部感觉在SPS2007中,所有的列表、库的模型以及特征应该是完全一致的,究竟是不是这样呢?我没有时间和能力去阅读大量的文档或反编译程序来看,所以想到通过数据库分析的方式来证实这个问题。
首先我们打开安装SPS系统的数据库,看到情况如下:
对应上表我们可以知道凡是Share以及WSS开头的都是SPS建立的数据库。
SharedServices2_DB |
|
SharedServices2_Search_DB |
|
SharePoint_AdminContent_* |
|
SharePoint_Config |
|
WSS_Content* |
所谓的WSS内容网站集数据库,每一个网站集一个数据库,在安装SPS的时候自动建立一个缺省的网站集,再建立一个个人网站集,以后每建立一个网站集就建立一个这样的数据库 |
WSS_Search_moss |
|
其中WSS_Content开头的是每个门户系统单独建立的数据库,我们从这里入手,希望能找到我们需要的东西。
呵呵,其中蓝色标明的那个数据库是昨天新建立的数据库,我们从这里入手比较好办。
首先要找到网站或网站集存储在那里?
我们知道一个新建立的门户本身就是一个网站集,我们看看这个网站集下边有多少网站:
一共5个;
在数据库发现一个【Sites】的表,打开一个记录,有一个【Webs】的表打开6个记录:
报告
门户系统
文档中心
网站
新闻
搜索
对比上述的情况,原来门户系统本身就是一个网站,我们得到如下的资料:
Sites |
存储网站集信息 |
Webs |
存储网站信息 |
AllLists |
列表信息 |
AllUserData |
类似列表的用户数据存储 |
WebParts |
存放以下的内容: 1、安装到页面的webpart以及list产生的webpart。 2、list的视图也记录到了这里。
|
Workflow |
工作流实例信息 |
WorkflowAssociation |
工作流流程信息 |
为了验证刚才的分析
我们先建立一个网站看看情况:的确如此,Webs增加了一条记录。
新建立一个网站集,也在Sites中找到一个记录。其中有一个字段设置了启动网站。
我们记录下刚才新建立的网站的id为【30e95f81-889a-457f-9e79-3022d2e70262】
因为作这个分析的初衷是分析列表的情况,所以我们要先找到列表在那里存储的。
发现一个【Lists】的表
新建立一个【胡涛的自定义列表】也找到了这个记录,由于这是分析重点,所以我们提出其字段来分析:
我们记录下这个列表的id【d8777117-b1b5-46c3-a483-29bd6c6000c8】
字段名 |
类型 |
为空 |
说明 |
tp_WebId |
uniqueidentifier |
Unchecked |
网站id |
tp_ID |
uniqueidentifier |
Unchecked |
列表id |
tp_Title |
nvarchar(255) |
Unchecked |
列表说明 |
tp_Created |
datetime |
Unchecked |
创建时间 |
tp_Modified |
datetime |
Unchecked |
最后修改时间 |
tp_LastDeleted |
datetime |
Unchecked |
|
tp_DeleteCount |
int |
Unchecked |
|
tp_LastSecurityChange |
datetime |
Unchecked |
|
tp_Version |
int |
Unchecked |
|
tp_Author |
int |
Checked |
|
tp_BaseType |
int |
Unchecked |
|
tp_FeatureId |
uniqueidentifier |
Checked |
|
tp_ServerTemplate |
int |
Unchecked |
|
tp_RootFolder |
uniqueidentifier |
Unchecked |
|
tp_Template |
uniqueidentifier |
Checked |
|
tp_ImageUrl |
nvarchar(255) |
Unchecked |
|
tp_ReadSecurity |
int |
Unchecked |
|
tp_WriteSecurity |
int |