WEB开发网
开发学院数据库MSSQL Server 讲述如何使用SQL CLR表值函数进行扩展 阅读

讲述如何使用SQL CLR表值函数进行扩展

 2007-05-17 09:36:00 来源:WEB开发网   
核心提示: 4.选择“启用 CLR 集成”,此外,讲述如何使用SQL CLR表值函数进行扩展(5),您可以在 SQL Server 中运行以下查询(此查询需要 ALTER SETTINGS 权限):USE mastersp_configure 'show advance

4.选择“启用 CLR 集成”。

此外,您可以在 SQL Server 中运行以下查询(此查询需要 ALTER SETTINGS 权限):

USE master
sp_configure 'show advanced options', 1;
GO
RECONFIGURE;
GO
sp_configure 'clr enabled', 1;
GO
RECONFIGURE;
GO

开发表值函数:

若要开发表值函数,请在 Visual Studio 中创建一个新的 SQL Server 项目。若要创建 SQL Server 项目,请打开“新建项目”对话框,展开 Visual C#,然后选择“数据库”。此时,系统会提示您输入数据库连接信息。有关详细信息,请参阅 SQL Server 2005 联机丛书中的如何:创建 SQL Server 项目。在您建立了数据库连接后,就可以编写表值函数了。在项目中创建一个空白 .cs 文件,文件名为 EventLog.cs,然后将示例函数从前一部分复制并粘贴到该文件中。

部署表值函数:

若要部署,您必须向 SQL Server 实例注册该函数和包含它的程序集。这一操作可通过 Transact-SQL 命令完成。以下脚本会注册 tvfEventLogs 程序集和 ReadEventLog 函数:

CREATE ASSEMBLY tvfEventLog
  FROM'D:assemblies  vfEventLog  vfeventlog.dll'
  WITH PERMISSION_SET = SAFE
  GO
CREATE FUNCTION ReadEventLog(@logname nvarchar(100))
  RETURNS TABLE (logTime datetime,Message nvarchar(4000),
   Category nvarchar(4000),InstanceId bigint)
  AS EXTERNAL NAME tvfEventLog.TabularEventLog.InitMethod GO

此外,您还可以在解决方案资源管理器中右键单击相应的项目,并选择“部署”选项,直接从 Visual Studio 中部署您的程序集。Visual Studio 会使用 SqlFunction 属性来自动确定函数签名和其他必需的元数据。

上一页  1 2 3 4 5 6 7 8 9 10  下一页

Tags:讲述 如何 使用

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接