在存储过程中的动态SQL中使用临时表 [英] Using a temporary table in dynamic sql in a stored procedure

查看:70
本文介绍了在存储过程中的动态SQL中使用临时表的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在SQL Server 2012中编写存储过程.我有一个这样定义的临时表:

I am writing a Store Procedure in SQL Server 2012. I have a temporary table defined like so:

  DECLARE @CURRENT_RET_WEEK_PTIMEIDS TABLE ( PTIMEID INT )

我还使用 EXECUTE 编写动态SQL查询.有什么方法可以将这个表连接到上面的临时表上?

I am also using EXECUTE to write a dynamic SQL query. Is there any way I can join this table onto the above temporary table?

推荐答案

尝试使用本地临时表-

IF OBJECT_ID ('tempdb.dbo.#temp') IS NOT NULL
   DROP TABLE #temp

CREATE TABLE #temp (ID INT)
INSERT INTO #temp (ID)
VALUES (1),(2)

DECLARE @SQL NVARCHAR(MAX)
SELECT @SQL = 'SELECT * FROM #temp'

EXEC sys.sp_executesql @SQL

这篇关于在存储过程中的动态SQL中使用临时表的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆