你的位置:首页 > 数据库

[数据库]带参数的CLR存储过程


 昨天有学习《简单创建与布署CLR存储过程》http://www.cnblogs.com/insus/p/4371762.html,知道怎样创建以及布署至SQL中去。

下面这个范例是实现CLR存储过程附带参数:


可复制代码:

SqlConnection connection = new SqlConnection("Context connection=true");    connection.Open();    SqlCommand command = new SqlCommand();    command.Connection = connection;    string sql = "SELECT [Fruit_nbr],[FruitKind_nbr],[FruitName] FROM [dbo].[Fruit] WHERE [FruitName] LIKE @FruitName";          command.CommandText = sql;    SqlParameter param = new SqlParameter("@FruitName", SqlDbType.NVarChar);    param.Value = name;    command.Parameters.Add(param);    try    {            SqlDataReader reader = command.ExecuteReader();      SqlContext.Pipe.Send(reader);    }    catch (Exception ex)     {      throw new Exception(ex.Message);    }        connection.Close();

View Code


编写CLR存储过程,有点像是在程序中直接写SQL语句一样,不过有细规范与细节不同而已。

Insus.NET觉得CLR存储过程,是一适合一些较稳定与成熟的程序,当布署之后,一般不需要修改的。因为CLR存储程有更新或是升级,需要删除原旧有已经布署好的存储过程以及Assembly,然后才可以重新布署新版本的CLR存储过程。


删除FruitClr assembly相关的存储过程:



再删除Assembly:


当全部Drop完之后,再参考昨天的CLR存储过程SQL布署方法,重新布署......

下面演示执行新添加的CLR存储过程: