SQLCLR(一)入门
SQL Server 2005发布后,可以编写出能够在SQL Server中运行的.net代码了。同IIS一样,SQL Server 2005也是.net程序的宿主。
首先安装sqlserver2005和visual studio 2005。启用sqlserver2005的clr ,应先在sqlsever的查询分析器按实际情况执行下边的语句
exec sp_configure 'clr enabled'--查看状态
exec sp_configure 'clr enabled',1--1,启用clr\0,禁用clr
reconfigure with override--按提示(配置选项 'clr enabled' 已从 0 更改为 1。请运行 RECONFIGURE 语句进行安装。)运行此句
exec sp_configure 'clr enabled',1--1,启用clr\0,禁用clr
reconfigure with override--按提示(配置选项 'clr enabled' 已从 0 更改为 1。请运行 RECONFIGURE 语句进行安装。)运行此句
快速开发的方法莫过于直接使用visual studio 2005。
第一步,打vs新建项目类型-数据库-SQL Server项目。
第二步,数据库引用连接。如果没有可选连接,可以添加新连接。
点添加新引用按钮,添加新的连接。
第三步,现在可以添加用户自定义类型(UDT)、存储过程、用户自定义函数、聚合和触发器中的任意一种了。
现在动手做一个小的自定义函数的例子。
添加一个"用户定义的函数(F)",
using System;
using System.Data;
using System.Data.SqlClient;
using System.Data.SqlTypes;
using Microsoft.SqlServer.Server;
public partial class UserDefinedFunctions
{
[Microsoft.SqlServer.Server.SqlFunction]
public static SqlString TestFunction(string input)
{
// 在此处放置代码
return "hello," + input;
}
};
using System.Data;
using System.Data.SqlClient;
using System.Data.SqlTypes;
using Microsoft.SqlServer.Server;
public partial class UserDefinedFunctions
{
[Microsoft.SqlServer.Server.SqlFunction]
public static SqlString TestFunction(string input)
{
// 在此处放置代码
return "hello," + input;
}
};
项目右键-部署,状态栏显示部署成功后,在sqlserver2005 查询分析器选择对应的数据库执行下面的语句。
SELECT [dbo].[TestFunction] ('david fan')
结果如下