Necesito la equivalencia en oracle

jime
06 de Octubre del 2003
Alquien puede ayudarme con estas sentencias que estan en sql server, necesito la equivalencia en oracle

CREATE TABLE #valor (val number);

insert into #valor select count(*) from tab_menu where .....

insert into #valor values(1)
select * from #valor where val>0

valor es una tabla temporal, como se creean en oracle

Les agradeceria mucho si alguien sabe

Cariños
Jime

nerea
06 de Octubre del 2003
En oracle existen tablas temporales, pero no tienen el mismo comportamiento que en SQL-Server.

Se puede crear una tabla con la opción "GLOBAL TEMPORARY", pero al terminar la sesión no borra la tabla, sino que elimina todos los segmentos temporales, y como consecuencia también los registros, ya que se almacenan en segmentos temporales.

Al final, en oracle, una tabla temporal es muy parecido a una tabla ordinaria.

Por tanto lo que tienes en SQL*Server te vale para Oracle, pero luego tendrías que borrar la tabla valor a mano.