Base de conocimiento

Creado por eth0
2011-08-30
12:46:44

Categorías
Etiquetas

Sacar las dependencias de un objeto en Oracle

Si necesitamos sacar las dependencias de una tabla o de otro objeto en Oracle, por ejemplo para sacar la secuencia usada por el trigger que incrementa el campo ID de una tabla, podemos hacer uso de la tabla interna user_dependencies.

En el ejemplo que nos ocupa, esta consulta nos devuelve los nombres de todas las secuencias, si hubiera más de una, usadas por los triggers de una tabla concreta:

  1. SELECT
  2.     ud.referenced_name
  3. FROM
  4.     user_triggers ut
  5.     INNER JOIN user_dependencies ud ON ut.trigger_name = ud.name
  6. WHERE
  7.     ud.TYPE = 'TRIGGER'
  8. AND ud.referenced_type = 'SEQUENCE'
  9. AND ut.table_name = 'NOMBRE_DE_TABLA'