Columnas Virtuales

La capacidad de crear columnas virtuales es una característica nueva en Oracle 11g que permite definir un campo que contiene datos derivados (calculados), obtenidos de otras columnas de la base de datos.

Las características que tiene son:

  • No consumen espacio ya que se calculan al instante (antes se realizaba mediante triggers).
  • Se pueden crear índices sobre estas columnas.
  • No están soportadas para tablas IOT, EXTERNAL, CLUSTER ni TEMPORARY
  • Tampoco están soportados algunos tipos de datos suministrados por Oracle: tipos definidos por el usuario, LOBs, o LONG RAW.

Para su creación se utiliza la siguiente sintaxis:

Leer más…

Cursor Sharing

No es infrecuente encontrar aplicaciones que hacen caso omiso del principio de usar bind variables y se comprueba que el rendimiento baja considerablemente por la elevada tasa de hard parsing que se produce. Casi sin pensarlo el desarrollador se refugia en el uso del parámetro cursor_sharing como la única alternativa para solucionar el problema.

En Oracle 11g se ha introducido el concepto de cursores inteligentes (Adaptive Cursor Sharing) y esto ayudará a generar los posibles planes de ejecución para los diferentes valores de bind. Con esto se pretende eliminar los problemas que se han sufrido por el bind peeking.

Leer más…