未获得@lastupdate
的值。如果删除SELECT
语句,则在代码隐藏
@lastupdate
的值
@action int,
@autoid int = NULL,
@datecheck date = NULL,
@lastupdate datetime = '' OUTPUT
AS
BEGIN
SET NOCOUNT ON;
IF @action = 1
BEGIN
SET @lastupdate = (SELECT reddate FROM lastupdate)
SELECT * FROM view_mychart WHERE processdate=@datecheck
END
END
答案 0 :(得分:1)
在结果集之后返回任何输出参数。在尝试访问输出参数之前,请确保已处理/读取结果。
答案 1 :(得分:0)
从我所看到的,你应该使用以下内容:
SELECT @lastupdate = reddate FROM lastupdate
虽然我个人可能会限制查询,因为这可能需要一段时间,具体取决于数据库大小等。
答案 2 :(得分:0)
如果需要两者 - 只需编写两个语句
IF @action = 1
BEGIN
-- are you 1000% sure this only ever returns ONE ROW???
-- otherwise, you might need to change it somehow....
SELECT @lastupdate = reddate FROM lastupdate
SELECT * FROM view_mychart WHERE processdate = @datecheck
END
END
这应该可以正常工作!