Oracle中如何在储过程中使用临时表

主要是不知道在存储过程里面使用临时表 而且是要把查询的语句直接插到临时表的

SELECT AID=IDENTITY(INT,1,1),ITEM1,ITEM2,ITEM3 INTO #HA
FROM MALERRJOURNAL WHERE ITEM1 IN (select macid from MachineInfo where MacID in
(select MacID from MachineInfo where PropertyValue=@CITY and PropertyCode='11'
and MacID in (select MacID from MachineInfo where
PropertyValue=@PROVINCE and PropertyCode='10')) and PropertyCode='12' and PropertyValue=@AREA)
AND SUBSTRING(ITEM2,1,10)=@HDATETIME
ORDER BY ITEM1,ITEM2,ITEM3

代码如上

查询一些记录出来直接插入#HA 临时表里面

请帮我看看是哪里出错了?偠动态建立临时表啊 就是在存储过程里面动态建立 我已经写好了 我主要是不知道偠怎么把查询的结果插入到临时表里面?请高手指点...

第1个回答  2013-09-21
在你上那断前面加上

create procedure pro
as
str varchar2(100);
begin

str:=‘CREATE GLOBAL TEMPORARY TABLE #HA
(
……
)
ON COMMIT DELETE ROWS’;
execute immediate str;
insert into #HA

中间……那里是临时表的字段名,类型,根据你自己要插入进去的数据匹配好
第2个回答  2013-09-21
QQ联系我,远程协助帮助你!....
相似回答