sql过程只返回最后一行而不是多行

我已经验证该程序确实返回多个ro 问题是我的sql过程只返回一行,但从asp方面我只能得到一行:
ALTER PROCEDURE cphsdbm.tp_Trip_List
@UserID int,
@Trip_Name varchar(50) output
AS
BEGIN
SELECT @Trip_Name = Trip_Name FROM tbl_Trip WHERE UserID=@UserID; 
END
我的代码:
do
{
while (rdr2.Read())
{
trip_count++;
Response.Write("Success!");
}
trip_count++;
} while (rdr2.NextResult());
    
已邀请:
要返回多行,您的存储过程应返回结果集(而不是单个输出值),即:
ALTER PROCEDURE cphsdbm.tp_Trip_List 
@UserID int
AS 
BEGIN 
     SELECT Trip_Name FROM tbl_Trip WHERE UserID = @UserID;  
END 
阅读:
while (rdr2.Read()) 
{ 
   trip_count++; 

   // ... do something with trip name...
} 
    
您正在使用的存储过程不应返回一行。它只会返回传递给存储过程的
output
变量中的
Trip_Name
值。我不知道你的数据库的结构或你需要从表中读取什么,所以除非你详细说明你的要求,否则我不能提出任何建议。 此外,读者中不会有任何
NextResult()
。     

要回复问题请先登录注册