|
|
1
2
不,没有。变量的作用域为一个级别(因此嵌套调用看不到它们),#临时表的作用域为会话,##临时表的作用域为全局。在T-SQL中甚至无法创建新会话(甚至
不过,要小心在嵌套的存储过程中创建临时表:如果不小心,就会遇到麻烦。明确地 per the docs :
这意味着“明显”的情况是,在嵌套的每个步骤中都创建了“相同”的临时表,正如您所期望的那样:每个嵌套调用都有其“自己的”表,并且看不到父表。如果你 不要 不过,在嵌套调用中创建表时,您将得到父表,如果您使用不同的结构创建一个表(无论出于何种原因),那么当SQL Server检测到这组奇怪的情况时,您实际上可能会得到一个编译错误。 因此,您可以使用临时表作为跨调用保持状态的方式,也可以不通过“重新创建”临时表来实现这一点,但要保持状态正常,这取决于您自己。 |
|
|
2
1
简单地说
所以
|
|
|
sqlrobert · SQL-如何查找不包含特定字段值的一组记录 2 年前 |
|
|
Nick Fleetwood · 调度语法的LINQ查询 3 年前 |
|
|
Mateen Bagheri · 选择表的计数并选择其自身 4 年前 |
|
Java · 使用交叉应用同时显示两列 4 年前 |