原文:http://blog.sina.com.cn/s/blog_5d1f29c10100b04n.html
这里我们用C#做一个计算滑轮系统近似距离的函数,并把该函数部署到SqlServer2005上去,这里使用的方法是原始的,全手动方式的部署方式,主要的目的是为了理解部署原理,实际上直接开SqlServer数据库项目可能更容易些。
//自定义计算传输带距离的函数
using System;
using System.Collections.Generic;
using System.Text;
namespace SqlServerClr
{
}
把以上CS文件编译为动态连接库, 在Visual Studio 2005 命令行模式下使用命令:
csc /t:library /out:pulleylib.dll pulley.cs
编译成功,得到了一个pulleylib.dll
二、在SQL Sever 2005中部署CS的自定义函数
--编译PulleyDistance函数
Drop Assembly Mechanics --如果编译程序出错可以用此命令删除程序集
Create Assembly Mechanics --Mechanics是编译程序集名称
from 'E:\pulleyLib.dll'
Go
Create function PulleyDistance
(
@diameter1 float,
@diameter2 float,
@beltLength float
returns float
As External name
[Mechanics].[SqlServerClr.pulley].[PulleyDistance]
GO
--检查是否已经部署上了
select dbo.PulleyDistance(3,2,100)
select routine_name,routine_body from information_schema.routines
通过以上两步,一个.NetCLR的函数就部署到了SqlServer上了,^__^