1
我有一个报告将触发SQL Server上的存储过程。报告需要几分钟才能运行。目前,在开发环境中使用我这种类型的代码正在写一对夫妇临时表:在开发环境处理多个用户同时创建临时表
SELECT *
INTO #Temp1
FROM MyTable
WHERE MyVal = 'X'
SELECT *
INTO #Temp2
FROM MyOtherTable
WHERE MyOtherVal = 'Y'
ETC...
工作正常,但有一个轻微的可能性有一天两个人可能用两个不同的参数同时启动此功能。如果他们这样做,会导致一个#Temp
被覆盖?如果是这样,处理这个问题的最好方法是什么?你能创建一个#Temp
文件名基于时间戳或什么的?
不,您创建的临时表的创建方式是特定于会话的。多个用户不会互相干扰。 – jradich1234
如果临时表以#开头,则该用户特定。如果你在开始时给它一个##,那么它对所有用户都是全球的。 – PulseLab
谢谢,伙计们!这些是自学成才的陷阱,但我一直在学习! –