SQL 存储过程和数据集
Posted
技术标签:
【中文标题】SQL 存储过程和数据集【英文标题】:SQL Stored Proc and Dataset 【发布时间】:2009-11-12 20:54:52 【问题描述】:我有一个在 SSMS 中运行良好的 sql 存储过程。当我尝试通过代码执行并将返回分配给数据集时,我得到了零行。我已经使用即时窗口来确保我将正确的参数发送到存储的过程,这一切都很好。
还有什么会导致我将零行分配给数据集。这是我的代码。
谢谢, 迈克
编辑:我没有从 SQL 中得到任何异常..
Public Function GetTransReporting(ByVal transNumber As Long, ByVal customerID As Long) As DataCommon.transReporting
Dim myTransReporting As New transReporting
Dim da As SqlDataAdapter
Dim prm1 As SqlParameter
Dim prm2 As SqlParameter
mcmd = New SqlCommand
mcmd.CommandType = CommandType.StoredProcedure
mcmd.Connection = mcn
mcmd.CommandText = "GetTransReportingByCustomerID"
prm1 = New SqlParameter("@transNumber", Data.SqlDbType.BigInt)
prm1.Value = customerID
mcmd.Parameters.Add(prm1)
prm2 = New SqlParameter("@customerNumber", Data.SqlDbType.BigInt)
prm2.Value = transNumber
mcmd.Parameters.Add(prm2)
da = New SqlDataAdapter(mcmd)
da.Fill(myTransReporting)
Return myTransReporting
结束函数
【问题讨论】:
这个存储过程是做什么的?有什么异常吗? 【参考方案1】:知道了.. 如果您在上面查看我的参数,我会不小心将交易分配给客户,将客户分配给交易。哦!
谢谢, 迈克
【讨论】:
【参考方案2】:您的存储过程是否以 SET NOCOUNT ON 开头?如果存储过程在最终 SELECT 之前处理多个查询,则缺少此功能有时会导致问题。
【讨论】:
以上是关于SQL 存储过程和数据集的主要内容,如果未能解决你的问题,请参考以下文章
finereport报表,使用带参数的sql存储过程,报没有返回数据集的错