SQL存储过程将少量行作为错误返回

时间:2015-06-21 11:43:14

标签: c# sql stored-procedures datatable

我试图使用SQL存储过程返回表中的所有行。然后使用C#将结果存储在DataTable中。

在通过EXEC命令执行存储过程时,我在SQL环境中获得了预期的结果。但是当值存储在DataTable中时,很少行只显示错误,而其他行则显示一些数据。

存储过程如下:

ALTER PROCEDURE procDDSDDAReg (@v_querytype VARCHAR(20), @v_Itemindex  INT)
AS 
BEGIN
 IF @v_querytype = 'SELECT_REQUEST'
  BEGIN 
        SELECT * FROM  DDSInternetBankingDDADetails o
        WHERE isnull(o.uploadstatus,'N') = 'N' AND o.InstructionCode='RQST';
  END; 
ELSE IF  @v_querytype = 'UPDATE' 
  BEGIN
   UPDATE DDSInternetBankingDDADetails SET uploadstatus ='Y' WHERE  Itemindex=@v_Itemindex 
  END; 


ELSE IF  @v_querytype = 'UPDATE_ROLLBACK' 
  BEGIN
   UPDATE DDSInternetBankingDDADetails SET uploadstatus ='N' WHERE  Itemindex=@v_Itemindex 
  END; 

 END;
GO

DataTable的快照是: enter image description here

C#代码的快照是: enter image description here

虽然没有抛出任何错误。请告诉我可能的原因。

1 个答案:

答案 0 :(得分:1)

令人难以置信的是,这是VS2008 Data Visualizer中的一个错误。

行和列属性上的

Quickwatch显示了所有行中的实际值,但使用起来显然更加繁琐。