微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

在多用户环境中使用临时表

如何解决在多用户环境中使用临时表

很有可能不会。如果将临时表定义为#temp@temp,那么您是安全的,因为这类临时表只能由创建连接访问,并且仅在存储过程执行期间有效。但是,如果您使用的是##temp表(两个“磅”符号),而这些表也只持续创建存储过程运行的时间,则它们会暴露于该sql实例的所有连接中,并可供所有该实例访问。

不使用## tables的可能性很好,因此您可能很安全。

解决方法

情况如下:

我有一个使用SP作为数据集的SSRS报告。SP创建一个临时表,在其中插入一堆数据,然后选择将其退回以供SSRS报告。挺直截了当的。

问题:

如果多个用户在选择了不同参数的情况下运行报表,SP创建的临时表是否会与tempdb冲突,并可能无法返回预期的数据集?

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。