Sybase#表

时间:2018-05-30 16:31:51

标签: sybase sybase-ase

我正在尝试调试填充#table的存储过程(比如proc1),让我们说#reserves。该过程没有#reserves的插入语句,但仍然有一些数据被填充到表中,并作为结果集发送到输出。

Proc1内部调用Proc2,它也声明了#reserves,并填充了一些数据。我的问题是 - 有没有一种方法可以将Proc2。#reserve发送数据到Proc1。#reserve?

以下是示例程序

Create Proc1
As
Begin

Create Table #Reserves
(
id int not null,
value int not null
)

Exec Proc2

Select id,
value 
from #Reserves
End

Create Proc2
AS
Begin

Create Table #Reserves
(
id int not null,
value int not null
)

Insert into #reserves
(id, value)
Select 1 as id,2 as value

End

1 个答案:

答案 0 :(得分:0)

每个proc都在创建它自己的#Reserves版本(这在ASE中是可行的;如果在退出proc2之前,则查询你的tempdb' s {{1}你应该看到sysobjects}的两个条目。

如果您希望name like '#Reserves%'填充由proc2创建的#Reserves,请考虑修改proc1以仅创建proc2,如果它还没有存在。