作者说他那会儿接触到不少关于修改SharePoint数据库的讨论,以及使用了已经公布出来的可以用来直接对SharePoint数据库进行操作的工具。这里引用下他说的5点不要直接查询SharePoint数据库的原因:
1、这是完全违背EULA的(EULA——最终用户许可协议。你在安装SharePoint时会点“同意”);
2、你对SharePoint的查询语句不能永远保证有效,因为一旦安装了微软发布的相关补丁或服务包后,数据库架构可能会改变;
3、直接查询数据库会对服务器额外负担并产生性能问题;
4、直接使用SELECT语句进行查询,可能产生“脏”的读出;
5、查询语句可能产生错误的接受信息(影响SharePoint的正常运行)。
呼呼,第一点看来没什么魅力,相信不少人会笑而致之,但后面几点看来不容小视,总之是软硬兼施的。
所以作者提倡对SharePoint数据库的操作,应通过SharePoint对象模型或者SharePoint内在的服务来实现,具体内容就不陈述啦。总之,直接修改SharePoint的数据库内容念头看来要打消了,问题有待进一步研究。
英文原文:Five reasons not to directly query SharePoint databases
附录:将SharePoint数据整合到SQL Server