sql >> Base de Datos >  >> RDS >> Oracle

Tabla temporal local en Oracle 10 (para el ámbito del procedimiento almacenado)

Dice que es nuevo en Oracle. Supongo que está acostumbrado a SQL Server, donde es bastante común usar tablas temporales. Oracle funciona de manera diferente, por lo que es menos común, porque es menos necesario.

Tenga en cuenta que el uso de una tabla temporal impone los siguientes gastos generales:

  1. leer datos para llenar la tabla temporal
  2. escribir datos de tablas temporales en un archivo
  3. leer datos de la tabla temporal a medida que comienza su proceso
La mayor parte de esa actividad es inútil en términos de ayudarlo a hacer las cosas. Una mejor idea es ver si puede hacer todo en una sola acción, preferiblemente SQL puro.

Por cierto, su mención de la agrupación de conexiones plantea otro problema. Un proceso que maneja grandes cantidades de datos no es un buen candidato para ejecutarse en modo OLTP. Realmente debería considerar iniciar un proceso en segundo plano (es decir, asíncrono), probablemente un trabajo de base de datos, para ejecutar su procedimiento almacenado. Esto es especialmente cierto si desea ejecutar este trabajo con regularidad, ya que podemos usar DBMS_SCHEDULER para automatizar la administración de tales cosas.