Sql 同一查询中的嵌套存储过程与Exec过程

Sql 同一查询中的嵌套存储过程与Exec过程,sql,sql-server,tsql,stored-procedures,Sql,Sql Server,Tsql,Stored Procedures,我有一个用于填充数据集市的存储过程,在这个过程中,它调用了许多其他过程 在这些存储过程中,我使用同名的临时表。当我执行嵌套过程时,出现了一些问题。这些临时表在某种程度上搅动和扭曲了我的数据,但若我在查询中以脚本的形式执行这些多个过程,那个就可以了 我不知道为什么会这样,你能给我一些想法吗?在同一查询中执行多个过程与使用其他过程执行此过程之间的区别是什么。由一个存储过程创建的临时表(#Table)可以由第一个存储过程调用的任何存储过程看到并更改,但是,当创建的dtor d过程完成时,将对其进行描述

我有一个用于填充数据集市的存储过程,在这个过程中,它调用了许多其他过程

在这些存储过程中,我使用同名的临时表。当我执行嵌套过程时,出现了一些问题。这些临时表在某种程度上搅动和扭曲了我的数据,但若我在查询中以脚本的形式执行这些多个过程,那个就可以了


我不知道为什么会这样,你能给我一些想法吗?在同一查询中执行多个过程与使用其他过程执行此过程之间的区别是什么。

由一个存储过程创建的临时表(
#Table
)可以由第一个存储过程调用的任何存储过程看到并更改,但是,当创建的dtor d过程完成时,将对其进行描述。如果要将表视为变量(因此不在任何后续调用的存储过程的作用域内),请使用表变量(
@table
),而不是临时表。如果临时表不打算在过程之间共享,请使用过程名称/首字母缩略词作为前缀,使每个名称唯一。