HOLD LOCATOR sentencia

La sentencia HOLD LOCATOR permite a una variable de localizador de LOB conservar su asociación con un valor más allá de una unidad de trabajo.

Invocation for HOLD LOCATOR

Esta sentencia sólo puede incorporarse en un programa de aplicación. No se puede emitir de forma interactiva. Se trata de una sentencia ejecutable que puede prepararse de forma dinámica. Sin embargo, la instrucción EXECUTE con la cláusula USING debe utilizarse para ejecutar la instrucción preparada. HOLD LOCATOR no se puede utilizar con la instrucción EXECUTE IMMEDIATE.

Autorización para HOLD LOCATOR

No se necesita ninguna.

Sintaxis para HOLD LOCATOR

Leer diagrama de sintaxisOmitir el diagrama de sintaxis visualHOLD LOCATOR,variable-lenguaje-principal

descripción para HOLD LOCATOR

variable de host,...
Identifica una o varias variables localizadoras que deben declararse de acuerdo con las normas para la declaración de variables localizadoras. El tipo de variable de localización debe ser un localizador de objetos grandes binario, un localizador de objetos grandes de caracteres o un localizador de objetos grandes de caracteres de doble byte.

La variable host debe tener actualmente un localizador asignado. Es decir, se debe haber asignado un localizador durante esta unidad de trabajo (mediante una sentencia FETCH, SELECT INTO, asignación, sentencia SET de variable de host o sentencia VALUES INTO); de lo contrario, se devuelve un error.

Si se especifica más de un localizador y se devuelve un error en uno de ellos, es posible que algunos localizadores se hayan retenido y otros no.

Notas para HOLD LOCATOR

Una variable LOB localizadora de variables anfitrionas que tiene la propiedad hold se libera (se elimina su asociación entre ella y su valor) cuando:

  • La sentencia SQL FREE LOCATOR se ejecuta para la variable localizador.
  • Se ejecuta la instrucción SQL ROLLBACK.
  • La sesión SQL ha finalizado.

Ejemplo para HOLD LOCATOR

Supongamos que la tabla de empleados contiene las columnas CURRÍCULUM, HISTORIAL y FOTO y que se han establecido localizadores en un programa para representar los valores representados por las columnas. Asigne a las variables de localizador CLOB LOCRES y LOCHIST, y a la variable de localizador BLOB LOCPIC la propiedad hold.
   EXEC SQL HOLD LOCATOR :LOCRES, :LOCHIST, :LOCPIC