我在一个脚本目前已经在数据库
IF OBJECT_ID('tempdb..#uDims') IS NOT NULL
DROP TABLE #uDims
select * into #uDims from table1
.... do something else
IF OBJECT_ID('tempdb..#uDims') IS NOT NULL
DROP TABLE #uDims
select * into #uDims from table2 -- >> I get error here
.... do something else
IF OBJECT_ID('tempdb..#uDims') IS NOT NULL
DROP TABLE #uDims
select * into #uDims from table3 -- >> and here
.... do something else
试图运行脚本的时候,我得到下探/创建临时表中多次评为“#XXXX”对象
There is already an object named '#uDims' in the database.
在第二和第三“选择为...”
这显然是一个编译时错误。如果我按部分运行脚本,那么每件事情都会运行良好。
这个问题有很多解决方法,但我想知道为什么SSMS不满意。
DDL没有GO? –
这是一个存储过程,所以没有GO。 – FLICKER
dba.se中的[这个答案](http://dba.stackexchange.com/a/128866/361)正确解释了这个问题 – Lamak