【问题标题】:Using a temporary table in dynamic sql in a stored procedure在存储过程中使用动态 sql 中的临时表
【发布时间】:2013-09-01 13:29:58
【问题描述】:
我正在 SQL Server 2012 中编写存储过程。
我有一个像这样定义的临时表:
DECLARE @CURRENT_RET_WEEK_PTIMEIDS TABLE ( PTIMEID INT )
我也在使用EXECUTE 来编写动态SQL 查询。有什么办法可以把这张表加入到上面的临时表上?
【问题讨论】:
标签:
sql-server
stored-procedures
sql-server-2012
dynamic-sql
【解决方案1】:
尝试使用本地临时表 -
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