Stored procedures 从另一个存储过程调用Sybase存储过程
我调用了一个Sybase存储的Proc X,它返回servlet使用的数据 在存储过程X中,存储过程get_business_day的调用方式如下: exec get_business_day@CBDate,-1,@prevBusDay输出 因此,调用此函数(在DBArtisan中)的结果是: 2010年6月25日12:00:00.000上午Stored procedures 从另一个存储过程调用Sybase存储过程,stored-procedures,sybase,Stored Procedures,Sybase,我调用了一个Sybase存储的Proc X,它返回servlet使用的数据 在存储过程X中,存储过程get_business_day的调用方式如下: exec get_business_day@CBDate,-1,@prevBusDay输出 因此,调用此函数(在DBArtisan中)的结果是: 2010年6月25日12:00:00.000上午 1行受影响 问题是,在执行X时,我不需要输出上面这一行,因为我得到的输出(在DBArtisan中)是: 2010年6月25日12:00:00.000上午
1行受影响 问题是,在执行X时,我不需要输出上面这一行,因为我得到的输出(在DBArtisan中)是: 2010年6月25日12:00:00.000上午
-2817773441.669999 这显然会影响servlet获得的结果,因为它只期望值-2817773441.669999 是否有任何方法可以抑制调用X时出现的get_business_day的输出 Thx
Agnyata尝试在临时表中捕获结果集,如下所示:
CREATE TABLE #BadResultSet (DateOf datetime)
INSERT INTO #BadResultSet (DateOf)
EXEC get_business_day @CBDate, -1, @prevBusDay output
以下是您想要做的事情: 主要程序:
...
create table #tmp(
CBDate datetime
)
EXEC get_business_day @CBDate, -1
select CBDate from #tmp
-- use it
drop table #tmp
-- before end
获得工作日:
create table #tmp(
CBDate datetime
)
go
create proc get_business_day
as
-- find the value to be inserted into @day
insert into #tmp select @day
go
drop table #tmp
go
不起作用。。。Iget下面的消息:20:43:20.546 DBMS--数字(156)严重性(15)状态(2)关键字“exec”附近的服务器语法不正确。请尝试以下操作:,我没有sybase来实际试用这些,但我一直都在这么做(十多年前,所以我记不清了)Thx KM。。。我认为这不能在Sybase中按照上述线程完成。如果您在get_business_day中将数据放入临时表,那么您必须在@prevBusDay之后删除“output”关键字