对临时表执行查询时,表或对象无效(普适SQL)

对临时表执行查询时,表或对象无效(普适SQL),sql,pervasive-sql,Sql,Pervasive Sql,我有一个SP,它将记录插入临时表,然后选择记录并返回它们。SQL就是这样 我通过删除INSERT INTO语句并最小化SQL来解决这个问题。罪魁祸首是工作列表中的SELECT*1。不知道为什么这不起作用。如果有帮助的话,我刚刚升级到了最新版本的普适服务器ver 10,但这个问题出现在10.3中,它仍然存在。一定是遗漏了什么 CREATE PROCEDURE "Connect_Workflow"( :StartDate DATETIME, :EndDate DATETIME)

我有一个SP,它将记录插入临时表,然后选择记录并返回它们。SQL就是这样

我通过删除INSERT INTO语句并最小化SQL来解决这个问题。罪魁祸首是工作列表中的SELECT*1。不知道为什么这不起作用。如果有帮助的话,我刚刚升级到了最新版本的普适服务器ver 10,但这个问题出现在10.3中,它仍然存在。一定是遗漏了什么

CREATE PROCEDURE "Connect_Workflow"(
     :StartDate DATETIME, :EndDate DATETIME)
     RETURNS(Patient varchar(100) , 
        AccessionNo varchar(25)  
        );
BEGIN
    CREATE TABLE #WorkFlow1
        (Patient varchar(100) null, 
        AccessionNo varchar(25) null 
    );  
    INSERT INTO #Workflow1(
      SELECT 
        rtrim(p.LastName),--+ '^' + rtrim(p.FirstName) + isnull('^' + rtrim(p.Initial), ''),
        v.VisitID   -- equiv to EncounterID
    FROM visit v
    join patient p on v.patientnumber = p.patientnumber
    WHERE v.VisitYY = '99'
    );

    SELECT * FROM #WorkFlow1;
    DROP TABLE #Workflow1;


END

更新:在注释掉从Worklist1中选择*之后;它仍然给出一个无效的表错误。如果我删除了INSERT-in和SELECT*,那么最后错误就消失了。引用表格时必须有错误。

删除放置表格工作流1;根据您的查询。
我相信它会在SP返回数据之前删除表

好吧,我知道了。虽然这个过程应该可以很好地工作,但事实上,我们建议这样做。使用选择进入

CREATE PROCEDURE "Connect_Workflow"(
     :StartDate DATETIME, :EndDate DATETIME)
     RETURNS(Patient varchar(100) , 
        AccessionNo varchar(25)  
        );
BEGIN
    SELECT 
        rtrim(p.LastName),--+ '^' + rtrim(p.FirstName) + isnull('^' + rtrim(p.Initial), ''),
        v.VisitID   -- equiv to EncounterID
    FROM visit v
    INTO #Workflow1
    join patient p on v.patientnumber = p.patientnumber
    WHERE v.VisitYY = '99'
    );
    SELECT * FROM #WorkFlow1;
END

移除放置台时,SP将触发一次。当我再次启动它时,它抱怨表已经存在。当我在CREATE表前面放一个DROP表时,它会说“没有这样的表或对象”。创建/删除临时表时肯定发生了一些事情。您是在同一个连接中运行它两次,还是在不同的连接中运行它?我是在普适控制中心运行它的。我在另一个窗口中加载一个SQL文档,并键入exec ProcNamevar1,var2。顺便说一句,我正在处理DEMODATA表,得到了同样的问题。我一直在使用ODBC测试。让我试试PCC。我用PCC在V10上进行了测试,发现了相同的错误。我用v10在ODBC测试中进行了尝试,没有发现任何错误。我还用v11在PCC中进行了尝试,没有发现任何错误。可能是v10 PCC的特定内容。我知道你已经找到了解决方案,所以现在这并不重要。