日期:2014-05-18  浏览次数:20431 次

[在线]存储过程如何返回多个32位的整形值?
在 vb 中调用 sql2000 存储过程A ,该存储过程要达到3个目的:

1 按指定的条件查询并返回所有符合条件的记录;
2 返回所有符合条件记录字段 '重量' 的总数;
3 返回所有符合条件记录字段 '件数' 的总数;

现在第1条已实现,问题是如何返回 总重量 和 总件数 ? 谢谢

------解决方案--------------------
sum(重量)
sum(件数)
------解决方案--------------------
32位整数可是天文数字啊
------解决方案--------------------
--都是十位数字
SQL code

create procedure Returnvalue 

as
declare @int int
set @int = 1232432332
return @int

go
declare @Getint int
exec @Getint=Returnvalue
print @Getint

------解决方案--------------------
UP
------解决方案--------------------
建议输出参数
------解决方案--------------------
SQL code
create proc pTest
(
--其它参数,
@weight int output,
@quantity int output
)
as

--1
select * from 表 where ...

--2,3
select @weight=sum(重量),@quantity=sum(件数) from 表 where ...

go

------解决方案--------------------
100分. 帮你顶一下,hehe
------解决方案--------------------
楼上的E文了得

PFPF :_>
------解决方案--------------------
Using OUTPUT variables (please use AdventureWorks sample database for checkup):

SQL code
CREATE PROCEDURE dbo.GetCountByLastName (
    @LastName NVARCHAR(50),
    @LastNameCount INT OUTPUT )
AS
SELECT @LastNameCount = COUNT(*)
FROM Person.Contact
WHERE LastName = @LastName