Sql 以存储过程+Sybase返回的整数赋值
我正在从另一个存储过程调用一个存储过程。那个存储过程总是返回一个整数值,所以我在一个整变量中接受那个值Sql 以存储过程+Sybase返回的整数赋值,sql,sybase,Sql,Sybase,我正在从另一个存储过程调用一个存储过程。那个存储过程总是返回一个整数值,所以我在一个整变量中接受那个值 EXEC @IsBusinessDay = LiteIsWorkingDay @ExecutionStart 但即使存储过程返回@IsBusinessDay的1值为0 代码块 SELECT @ExecutionStart = CONVERT(VARCHAR, GETDATE(), 107) EXEC @IsBusinessDay = LiteIsWorkingDay @Execut
EXEC @IsBusinessDay = LiteIsWorkingDay @ExecutionStart
但即使存储过程返回@IsBusinessDay的1值为0
代码块
SELECT @ExecutionStart = CONVERT(VARCHAR, GETDATE(), 107)
EXEC @IsBusinessDay = LiteIsWorkingDay @ExecutionStart
IF(@IsBusinessDay = 0)
BEGIN
IF(CONVERT(VARCHAR,@InterMediateStartDate,108) > CONVERT(VARCHAR,GETDATE(),108))
BEGIN
INSERT INTO TbJobQueue (JobId, ScheduleId, DueDate, Status, ExpiryDate,
ProcessingDate, InputUser, InputTime,
LastModifiedBy, LastModifiedTime)
VALUES (@JobId, @ScheduleId, @InterMediateStartDate, 'NQUE', NULL,
NULL, 'Scheduler', GETDATE(), NULL, NULL)
END
END
请帮忙
谢谢如果您想在变量中输入存储过程的值,必须这样做: 在LiteIsWorkingDay存储过程中声明输出参数 创建过程LiteIsWorkingDay @ExecutionStart varchar20,@IsBusinessDay int输出 在LiteIsWorkingDay存储过程中,必须为@IsBusinessDay输出参数选择一个值 在调用LiteIsWorkingDay的存储过程中,需要执行以下操作以获取其值: 声明@ExecutionStart varchar20 选择@ExecutionStart=convertvarchar,getdate,107 声明@IsBusinessDay int exec LiteIsWorkingDay,@IsBusinessDay输出
就这些。现在变量@IsBusinessDay将具有您想要的值:您能提供更多信息吗。存储过程中有什么内容。。。如果没有更多信息,我们将无法帮助您我正在使用一个存储过程插入记录。现在,为了检查今天是否为工作日,我将今天日期的值赋给@ExecutionStart并调用过程LiteIsWorkingDay。此过程将在HolidayMaster中检查该天是否为工作日。如果为工作日,则返回0,否则返回1。所以我期望存储过程中的值为0和1。这就是给出正确的结果。即使是上面给出的语句,如果单独调用,也能给出正确的结果。但是,当IsBusinessDay的店内过程值保持为0时,返回值的增量为0。