如何创建 CLR 存储过程






1.89/5 (9投票s)
2006年10月15日
3分钟阅读

38715
本文将指导您如何创建 CLR 存储过程。
引言
大家好,
这里有一些与 CLR 存储过程相关的很酷的东西,我将在这里介绍如何使用 VS 2005 创建简单的 CLR 存储过程。
我建议在阅读本文之前,请阅读我之前的文章,名为 “CLR 存储过程 vs. T-SQL 存储过程” 点击这里。
请按以下步骤顺序创建 CLR 存储过程。
1. 打开 VS 2005 并点击“新建项目”,然后选择“数据库”项目类型,如下所示。
2. 为您的项目选择位置,并点击“确定”。 如果之前创建了任何连接,则会出现以下屏幕以选择可用的数据库连接。
3. 您可以通过单击“添加新引用...”来添加另一个连接,单击该按钮后将出现以下屏幕。 如果您之前没有任何连接,则会显示相同的屏幕。
4. 键入您的 SQL Server 的机器名或 IP 地址。 选择您需要的身份验证类型(这里我使用 Windows 身份验证),然后选择您想部署 CLR 存储过程的数据库名称。
5. 点击“测试连接”,如果您收到消息“测试连接成功”,则点击“确定”,否则请确保您选择了正确的 SQL Server、数据库,并且您在 SQL Server 上拥有定义数据库的帐户。
6. 点击“确定”后,您将看到如下所示的消息窗口。
7. 说“是”并继续,我将在我的下一篇文章“部署和调试 CLR 存储过程”中介绍如何调试和设置与 CLR 存储过程相关的权限。
8. 现在在解决方案中,单击项目并选择“添加新项”,将出现以下窗口,您可以在其中选择类型为“存储过程”的项并单击“添加”。 (我将在我的下一篇文章“部署和调试 CLR 存储过程”中介绍“测试脚本”文件夹包含的内容)
9. 现在在解决方案中,单击项目并选择“添加新项”,将出现以下窗口,您可以在其中选择类型为“存储过程”的项并单击“添加”。 (我将在我的下一篇文章“部署和调试 CLR 存储过程”中介绍“测试脚本”文件夹包含的内容)
10. 加油,您即将编写您的第一个存储过程。 这里我将向您展示如何使用 CLR 存储过程选择记录的简单演示,就在这里。
[Microsoft.SqlServer.Server.SqlProcedure]
public static void GetRole()
{
// 在这里放置您的代码
SqlConnection conn = new SqlConnection("Context Connection=true");
SqlCommand cmd = new SqlCommand(@"Select * from dbo.Roles", conn);
conn.Open();
SqlDataReader rdr = cmd.ExecuteReader();
SqlContext.Pipe.Send(rdr);
rdr.Close();
conn.Close();
}
11. 现在从解决方案资源管理器中选择项目并选择部署。 部署到 SQL Server 后,转到 SQL Server 并执行以下查询并查看输出。
USE [IRSDev]
exec GetRole
输出
12. 您可能无法一次性部署 CLR 存储过程,因为存在许多权限问题。 如果是这样,请参阅我的下一篇文章“部署和调试 CLR 存储过程”。