CLR 1 HelloWorld
编写一个简单的“Hello World”存储过程
将以下 Visual C# 代码复制并粘贴到一个文本编辑器中,然后在名为“helloworld.cs”的文件中保存它。
using System;
using System.Data;
using Microsoft.SqlServer.Server;
using System.Data.SqlTypes;
public class HelloWorldProc
{
[Microsoft.SqlServer.Server.SqlProcedure]
public static void HelloWorld()
{
SqlContext.Pipe.Send("Hello world!\n");
}
}
编译该“Hello World”存储过程
DOS命令下输入:
C:\Windows\Microsoft.NET\Framework\v3.5\csc.exe /out:d:\HelloWorldProc.dll /t:library C:\Windows\Microsoft.NET\Framework\v4.0.30319\helloworld.cs
命令格式为:
csc.exe路径 + 空格 + /out: + 输出路径 + 输出文件名 + 空格 + /t:library + 空格 + cs文件路径
需注意的是数据库服务器必须支持编译时使用的.NET Framework版本
在 SQL Server 中加载和运行“Hello World”存储过程
假定您已在 D:\ 目录中创建了 helloworld.dll 程序集。
CREATE ASSEMBLY helloworld from 'd:\HelloWorldProc.dll' WITH PERMISSION_SET = SAFE
通过使用 create procedure 语句访问我们的 HelloWorld 方法。
CREATE PROCEDURE hello
AS
EXTERNAL NAME helloworld.HelloWorldProc.HelloWorld
启用CLR
exec sp_configure 'clr enabled',1 -- 1,启用clr 0,禁用clr
reconfigure
测试
exec hello
结果
Hello world!
删除该“Hello World”存储过程示例
首先,使用 drop procedure 命令删除该存储过程。
drop procedure hello
删除了该存储过程后,可以删除包含您的示例代码的程序集。
drop assembly helloworld