如何使用SQL CLR表值函数进行扩展
2007-12-27 15:30:25 来源:WEB开发网核心提示:在您部署了该表值函数后,该计算机的系统事件日志的虚拟表会添加到数据库中,如何使用SQL CLR表值函数进行扩展(7),由于 SQL Server 将该函数视为表,所以它可以无缝地用在 Reporting Services 中,我将说明如何在表值函数中使用 Microsoft MapPoint Web 服务,并将它与 A
在您部署了该表值函数后,该计算机的系统事件日志的虚拟表会添加到数据库中。由于 SQL Server 将该函数视为表,所以它可以无缝地用在 Reporting Services 中。
在您部署了该程序集后,请使用 Visual Studio 来创建新的 Reporting Services 项目。(如果您不熟悉如何使用 Reporting Services 报表设计器来创建报表,请参阅 SQL Server 2005 联机丛书中的 Reporting Services 教程。)使用连接到安装了该函数的同一数据库的 SQL Server 数据源创建报表。接着,创建使用以下查询的数据集:
SELECT TOP 10 T.logTime, T.Message, T.InstanceId
FROM dbo.ReadEventLog(N'Security') as T
WHERE T.Category = N'Logon/Logoff'
定义了数据集后,将表数据区域添加到报表布局,并将数据集中的各个字段添加到表详细信息行。最后,运行该报表。它将显示本地计算机的 Logon/Logoff 类别中的最后 10 个安全事件。图 2 显示了该报表的一个示例。
图 2. 报表示例
此简单示例可加以扩展,在其中包括其他计算机管理和监视任务。例如,可以创建一个表值函数来分析 Microsoft Internet 信息服务 (IIS) 日志。然后,可以使用 Reporting Services 来创建 Web 流量监视应用程序。
Web 服务和表值函数
表值函数的一个有趣功能是从 Web 服务中提取数据的能力。这可用于创建非常规的报表。我将说明如何在表值函数中使用 Microsoft MapPoint Web 服务,并将它与 AdventureWorks 数据库中的数据联接,从而将空间数据显示在地图上和显示在报表中。
赞助商链接