8

已编辑:将提取的 SharePoint 列表数据抓取到单独的 SQL Server 表 的最简单方法是什么?一种情况:您处于无法控制 SharePoint Server 后面的 SQL Server 的工作环境中,因此您不能只从UserData表中提取数据。

是否有任何实用程序可用于安排夜间提取?

Microsoft 是否计划在此处对“SharePoint 4”进行任何改进?

2009 年 1 月 6 日更新:
http
://connectionstrings.com/sharepoint 对于未安装 Office 的服务器,您需要:
此下载

4

12 回答 12

5

有一个 SSIS SharePoint 任务可用于获取常规数据流的数据信息:http: //www.codeplex.com/SQLSrvIntegrationSrv

于 2008-12-09T16:47:50.810 回答
3

刮痧?就像屏幕抓取一样?你是认真的吗?;)

2 个选项

SharePoint 对象模型 - http://msdn.microsoft.com/en-us/library/ms441339.aspx

SharePoint Web 服务 - http://msdn.microsoft.com/en-us/library/ms479390.aspx 特别是Lists Web 服务

Web 服务是 Excel/Access 与 SharePoint 通信以与其列表集成的方式。

事实上,一点谷歌 foo 给出了这两个结果:-

将 SQL Reporting Services 连接到 SharePoint 列表

使用 SQL Server 2005 Reporting Services 访问 SharePoint 列表项

于 2008-11-21T12:12:17.830 回答
2

2 分钟的答案是使用 Simego ( http://www.simego.com ) 的 Data Synchronization Studio,只需将其指向您的列表和数据库,它就会同步所有更改。

于 2009-04-20T10:12:22.507 回答
2

有一个用于 MOSS 2007/2010 和 WSS 3.0/4.0 的 ADO.NET 适配器,其名称为用于 Microsoft SharePoint 的 Camelot .NET 连接器。它使您能够使用 SharePoint 作为数据层,通过标准 SQL 语言查询 SharePoint 中的列表。

除了连接器之外,还有大量可用的开源工具和实用程序,例如用于将数据导出为各种格式(XML、MySQL、..)的 webpart、Joomla 插件、同步服务等。

有关详细信息和观看网络广播,请访问 http://www.bendsoft.com。BendSoft 目前正在寻找 Beta 测试人员并鼓励来自社区的所有反馈。

例子:

选择 * 从My Custom SharePoint List

INSERT INTO Calendar (EventDate,EndDate,Title,Location) VALUES ('2010-11-04 08:00:00','2010-11-04 10:00:00','Morning meeting with Leia','Starbucks' )

Corp Images从哪里删除Image Name= 'marketing.jpg'

于 2010-11-29T07:56:41.363 回答
2

我已经用一步一步的截图程序写了一篇关于这个的完整文章。它不使用任何第三方组件,仅使用 SQL BI Tools 和 Sharepoint。看看这里

http://macaalay.com/2013/11/01/how-to-archive-sharepoint-list-items-to-sql-server/

于 2013-11-04T08:05:18.333 回答
1

正如 Ryan 所说,我还建议使用对象模型/Web 服务将数据存储到单独的 SQL 数据库中。我认为最好的方法是编写一个事件处理程序,它至少会触发并复制用户插入/更新的数据。

于 2008-11-21T19:41:17.097 回答
1

关于您对“SharePoint 4”的查询,比尔·盖茨在 2008 年 SharePoint 会议上发表了一些评论。他建议使用 SharePoint 数据丰富 SQL 表,并继续提到其他一些可能很酷的事情。在我们开始看到 WSS4 / MOSS 14 的测试版之前,很难说他的确切含义以及它是否会在未来帮助解决您的问题。

于 2008-12-03T18:03:29.287 回答
1

我会使用 simego 软件,但我没有钱,也许 15 天试用就足够了!

于 2009-06-17T19:45:49.867 回答
1

如果您安装了 MOSS,则可以从 Sharepoint 管理中心设置业务数据目录,以自动为您同步数据。这是一个非常强大的产品,包含在 MOSS 中。当客户启用它时,我喜欢它,因此我可以利用它。

但有些人不这样做,而对于我自己,我发现如果他们没有运行 BDC 并且不可用,他们不可避免地不会给开发人员很多 SQL Server 的权利,所以 SSIS 通常是不可能的(但也许这只是我)。没问题; 对于那些我将整合一个轻量级的 EXE,它在一个计划任务上运行,该任务查询 Lists.asmx 并将更改推送到 SQL Server 表。对于一个没有删除任何内容的简单列表来说,这是相当琐碎的事情。获得 Visual Studio 2008、CAML Builder,并为美好时光做好准备。Lists.asmx 结果有点好笑,因为列表行的每个字段都是具有很多属性的单个节点,没有子节点......像这样的事情在我脑海中浮现......只要记住编码时...

<z:row ows_Id="1" ows_Field1="A1" ows_Field2="B1"/> <z:row ows_Id="1" ows_Field1="A2" ows_Field2="B2"/>

复制列表中的项目被删除,或者在 SP 列表之间存在父/子关系时,代码中的复杂性会发生。你会认为我有一些代码可以发送给你,但我没有费心整理一些我可以重复使用的东西。

我敢肯定还有其他方法可以处理它,但是到目前为止,计划任务 EXE 对我来说多年来对于多个应用程序都是可靠的。

于 2009-07-01T17:31:31.237 回答
1

我写了一些代码来实现它,你可以在这里找到它

从 moss 2007 中提取数据

于 2010-04-02T13:33:24.590 回答
0

根据您需要插入的数据的确切性质,可能只使用自动生成的 RSS 提要来获取您想要的信息,一个过程将需要读取 rss 并制定查询。

否则,控制台应用程序/服务可以使用对象模型来做同样的事情,但可以更好地控制字段信息。

于 2008-11-21T02:37:23.357 回答
0

我希望这样的事情更容易做到。不需要 SSIS 的东西被归结为一个控制台工具,它读取源/目标/地图信息的 xml 配置文件。

http://blogs.officezealot.com/mtblog/archive/2008/06/03/importing-list-data-into-sql.aspx

于 2008-12-03T00:40:06.680 回答