Oracle/PLSQL: Recuperando el valor de un campo LARGO

Los datos expuestos en este blog, son solo de índole informativo. Por favor realiza siempre una copia de seguridad antes de realizar cualquier cambio en tu proyecto.

Oracle/PLSQL: Recuperando el valor de un campo LARGO

Pregunta: Tengo una tabla en Oracle con un campo de tipo de datos LARGO. ¿Cómo puedo extraer el contenido de este campo LARGO?

Si ejecuto la declaración SQL a continuación, simplemente regresa .

seleccione event_details de vlts_event_data;

R: En Oracle, los campos LARGOS son un poco complicados. Sin embargo, puede usar el código PLSQL para determinar el valor de un campo LARGO.

A continuación se muestra un ejemplo de una función que devuelve el valor de un campo LARGO denominado SEARCH_CONDITION. Esta función acepta valores de clave principal (campos de propietario y nombre de restricción) y devuelve el valor del campo SEARCH_CONDITION del registro seleccionado.

CREATE or REPLACE function Find_Value
   ( av_owner varchar2, av_cname varchar2)
   RETURN varchar2

IS
   long_var LONG;

BEGIN
   SELECT SEARCH_CONDITION INTO long_var
   FROM ALL_CONSTRAINTS
   WHERE owner = av_owner
   AND constraint_name = av_cname;

   return long_var;

END;

Después de crear la función anterior, puede hacer referencia a la función en las instrucciones SQL. Por ejemplo,

SELECT owner, constraint_name, Find_Value(owner, constraint_name)
FROM ALL_CONSTRAINTS;

Esta instrucción SQL recuperará los campos propietario y nombre_restricción, y el valor almacenado en el campo CONDICIÓN_BÚSQUEDA, de la tabla TODAS_RESTRICCIONES.

Puede modificar la función Find_Value para hacer referencia a su propia tabla y nombres de campo. También debe modificar los parámetros de la función para pasar su propio valor de clave principal.

(Visited 4 times, 1 visits today)