sql insert exec之后的临时表为空
对于为什么最终的select*from TENTBL是空的,我感到非常困惑 当我运行这个程序时,其他一切都正常工作,但我需要临时表中的结果来继续存储过程的下一步。我一直在搜索每一个可能的论坛,包括这一个,但无法解决这个问题。任何帮助都将不胜感激sql insert exec之后的临时表为空,sql,sql-server,exec,Sql,Sql Server,Exec,对于为什么最终的select*from TENTBL是空的,我感到非常困惑 当我运行这个程序时,其他一切都正常工作,但我需要临时表中的结果来继续存储过程的下一步。我一直在搜索每一个可能的论坛,包括这一个,但无法解决这个问题。任何帮助都将不胜感激 CREATE TABLE #tempTbl ( POID VARCHAR(15), UPC VARCHAR(15), QtyOrdered int, DateOrdered date, Close
CREATE TABLE #tempTbl
(
POID VARCHAR(15),
UPC VARCHAR(15),
QtyOrdered int,
DateOrdered date,
Closed bit
)
insert into #tempTbl (POID, UPC, QtyOrdered, DateOrdered, Closed)
exec dbo.sp_executesql @as4sql;
--exec (@as4sql)
select * from #tempTbl
更新:
这是我的套装:
set @as4sql = 'INSERT INTO tblPODetail
(POID, UPC, QtyOrdered, DateOrdered, Closed)
(SELECT pod.PONumber, pod.UPC, pod.QtyOrdered, 1, 0
FROM [awx].[dbo].[POLines] pol
JOIN [awx].[dbo].[PODetails] pod
ON pol.PONumber = pod.PONumber
LEFT JOIN tblPODetail p
ON p.POID = pod.PONumber
WHERE p.POID IS NULL...
您是否验证了@as4sql在insert语句之外运行时返回的行?这似乎是不可复制的。是的,as4sql的主要目的是插入到永久表中,并且每次都这样做。记录集在这之后没有被清除,是吗?我没有用密码结算。我的意图是让@as4sql填充永久表,然后填充临时表,我只需要其中一个字段UPC中的所有记录。这是我的集合:set@as4sql='插入tblPODetail POID,UPC,QtyOrdered,DateOrdered,Closed SELECT pod.PONumber,pod.UPC,pod.QtyOrdered,1,0 from[awx].[dbo].[POLines]poljoin[awx].[dbo][PODetails]pod on pol.PONumber=pod.PONumber左连接tblPODetail p on p.POID=pod.PONumber,其中p.POID为NULL……@Jim因此删除了您对变量的设置。您可以在原始问题中发帖吗?您是否验证了@as4sql在insert语句之外运行时返回了行?这似乎是不可复制的。是的,as4sql的主要目的是插入到永久表中,并且每次都这样做。记录集在这之后没有被清除,是吗?我没有用密码结算。我的意图是让@as4sql填充永久表,然后填充临时表,我只需要其中一个字段UPC中的所有记录。这是我的集合:set@as4sql='插入tblPODetail POID,UPC,QtyOrdered,DateOrdered,Closed SELECT pod.PONumber,pod.UPC,pod.QtyOrdered,1,0 from[awx].[dbo].[POLines]poljoin[awx].[dbo][PODetails]pod on pol.PONumber=pod.PONumber左连接tblPODetail p on p.POID=pod.PONumber,其中p.POID为NULL……@Jim因此删除了您对变量的设置。你能把你原来的问题贴出来吗?