【发布时间】:2013-11-21 02:29:58
【问题描述】:
我想在我的 sql Server 查询中使用 ##TempTable 从 oracle db 获取值,但总是出错,错误提示
##TempTable is Invalid object name '##TempTable '.
这是我使用##TempTable的代码
SET @sQuery = 'SELECT * INTO ##TempTable
FROM OPENQUERY(ITCP,''SELECT * FROM DB.WINFO WHERE SCH_DATE = '''''+
CONVERT(VARCHAR(10),@DDATE,121) +''''''' ) A' EXEC(@sQuery)
我很困惑,我应该像往常一样声明查询来创建##TempTable 还是通过该查询自动创建临时表?因为我总是出错
【问题讨论】:
-
提前创建##TempTable 并做
INSERT INTO ##TempTable SELECT *...是否有效? -
是的,它可以工作,但我担心后来我不知道 ora db 的结构,我无法先创建表,是否可以像从 openquery 插入 ##sometable 那样进行查询?
-
只是为了确认 - 您在上面的
EXEC(@sQuery)或其他地方遇到了错误? -
@YuriyGalanter 是在 EXEC(@sQuery)
标签: sql sql-server temp-tables openquery