我可以在用户定义的函数中使用光标在SQL Server 2005托管代码中吗?

时间:2009-11-09 23:20:04

标签: .net sql-server

通过使用游标我想制作一个虚拟表。之后,使用一个函数我想使用该虚拟表并传递原始表的值,然后将虚拟表显示在输出中。

1 个答案:

答案 0 :(得分:1)

是。但您也可以使用SqlDataReader来完成相同的操作。请注意,您可能必须从嵌入式c#创建新连接(而不是使用SQLContext)。

string queryString = "SELECT OrderID, CustomerID FROM dbo.Orders;";
using (SqlConnection connection = new SqlConnection(connectionString))
{
    connection.Open();
    SqlCommand command = new SqlCommand(queryString, connection);
    using (SqlDataReader reader = command.ExecuteReader())
    {
       while (reader.Read())
       {
          var c1 = reader[0];
          var c2 = reader[1];
          ....
       }
       reader.Close();
    }
}

检查this以获取如何在Table-Valued-Function中包装此代码的示例。