你的位置:首页 > 数据库

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


前面写了一篇《带参数的CLR存储过程》http://www.cnblogs.com/insus/p/4373605.html ,如果我们需要创建一个带OUTPUT返回值。

实现它,可以先了解一下C#的OUT关键词

out (C# Reference)


打开刚才前面我们写好的SQL DataBase project,添加一个方法:


可复制代码:

 public static void GetFruitName(out SqlString fruitName, SqlByte fruit_nbr )  {    SqlConnection connection = new SqlConnection("Context connection=true");    connection.Open();    SqlCommand command = new SqlCommand();    command.Connection = connection;    string sql = "SELECT [FruitName] FROM [dbo].[Fruit] WHERE [Fruit_nbr] = @Fruit_nbr";    command.CommandText = sql;    SqlParameter param = new SqlParameter("@Fruit_nbr", SqlDbType.TinyInt);    param.Value = fruit_nbr;    command.Parameters.Add(param);    try    {      string scalarValue = (string)command.ExecuteScalar();      fruitName = (SqlString)scalarValue;    }    catch     {      fruitName = string.Empty;    }    connection.Close();  }

View Code


Build solution,然后找开Microsoft SQL Server management studio,重新部署Assembly以及Clr stored procedure。
参考前两篇《简单创建与布署CLR存储过程》http://www.cnblogs.com/insus/p/4371762.html 和 《带参数的CLR存储过程》http://www.cnblogs.com/insus/p/4373605.html 


 

执行存储过程: