set @sql = N'select id=identity(int,1,1) , stepCode,lcType,zhcl_sj,isEnd,isdelete into ##lins_jtsjtable from ' + @tblName + N' where isEnd=0 and isdelete=0'
exec sp_executesql @sql我的目的:创建一个临时表,然后获取里面的数据,但是由于@tblName是拼接出来的,所以只能用动态SQL语句来创建临时表,但是用局部临时表,我就获取不到数值,只能创建全局临时表,但是我创建的时候,数据库出错:
服务器: 消息 2714,级别 16,状态 6,行 1
数据库中已存在名为 '##lins_jtsjtable' 的对象。请问我该怎么办,是不是哪里定义错了,我创建局部临时表是可以的
exec sp_executesql @sql我的目的:创建一个临时表,然后获取里面的数据,但是由于@tblName是拼接出来的,所以只能用动态SQL语句来创建临时表,但是用局部临时表,我就获取不到数值,只能创建全局临时表,但是我创建的时候,数据库出错:
服务器: 消息 2714,级别 16,状态 6,行 1
数据库中已存在名为 '##lins_jtsjtable' 的对象。请问我该怎么办,是不是哪里定义错了,我创建局部临时表是可以的
数据库中已存在名为 '##lins_jtsjtable' 的对象。-------------------
數據庫中已經有了這個全局臨時表,換過一個名試試
declare @sql varchar(200)
set @sql = N'select id=identity(int,1,1) , stepCode,lcType,zhcl_sj,isEnd,isdelete into ##lins_jtsjtable from ' + @tblName + N' where isEnd=0 and isdelete=0'
exec (@sql)我試過了,沒有錯的
drop procedure ##ls_jtsjtable为什么这个不起作用,那段代码是在一个循环中的,所以我每次创建的时候我得先删除。我是在循环里面在套循环。
drop procedure ##ls_jtsjtable