DELPHI中是否能取出SQL 过程的临时表(100)

  • 主题发起人 主题发起人 esucc
  • 开始时间 开始时间
E

esucc

Unregistered / Unconfirmed
GUEST, unregistred user!
我创建了一个过程 create proc p_test(@custid varchar(10))as begin select rdsno,custid,orderno,code,numb,unit into #tmp form ( select * from a left join b on a.code=b.code union all select * from c left join b on a.code=b.code ) as tt where custid=@custid end若这个#TMP表中有十几万条记录,我想在DELPHI中直接操作这个临时表#TMP,当我选择CUSTID=‘A’ ,SELECT * FROM #TMP WHERE CUSTID=‘A’ ,当我选择CUSTID=‘B’,SELECT * FROM #TMP WHERE CUSTID=‘B’,这样操作会比重新打开过程快 qbase.close; qbase.parabyname('custid').asstring:='a'; qbase.open; qbase.close; qbase.parabyname('custid').asstring:='B'; qbase.open;请问如何在DELPHI中取出已在过程产生的临时表#TMP呢?THANKS!
 
操作不了,你在PROC中建立的用户级临时表,在tempDb里根本不是#TMP这个名字,所以你用不了的,如果用系统级临时表##也不好,毕竟是唯一的,能不能用到我没试过,你可以试下
 
#tmp改为##tmp就能取到了
 

Similar threads

D
回复
0
查看
1K
DelphiTeacher的专栏
D
D
回复
0
查看
1K
DelphiTeacher的专栏
D
S
回复
0
查看
3K
SUNSTONE的Delphi笔记
S
S
回复
0
查看
2K
SUNSTONE的Delphi笔记
S
I
回复
0
查看
493
import
I
后退
顶部