Consulta de SQL

| | |

Autorizaciones de la sentencia CREATE PROCEDURE (SQL)

|

Si el ID de autorización de la sentencia tiene autorización de SYSADM pero no autorización |de DBADM, a este ID se le otorga autorización de DBADM a fin de crear el procedimiento. |Esto se aplica a la sentencia (SQL) CREATE PROCEDURE |y no a la sentencia (Externa) CREATE PROCEDURE.

EXPLAIN_DIAGNOSTIC: Una nueva tabla Explain

La tabla EXPLAIN_DIAGNOSTIC contiene una entrada para cada mensaje de diagnóstico generado para una instancia determinada de una sentencia explicada en la tabla EXPLAIN_STATEMENT.

La función de tabla EXPLAIN_GET_MSGS consulta las tablas EXPLAIN_DIAGNOSTIC y EXPLAIN_DIAGNOSTIC_DATA Explain, y devuelve los mensajes formateados.

Tabla 39. Tabla EXPLAIN_DIAGNOSTIC
Nombre de columna Tipo de datos Anulable Clave 1 Descripción
EXPLAIN_REQUESTER VARCHAR(128) No PK, FK ID de autorización del iniciador de esta petición Explain.
EXPLAIN_TIME TIMESTAMP No PK, FK Hora de iniciación de la petición Explain.
SOURCE_NAME VARCHAR(128) No PK, FK Nombre del paquete en ejecución cuando se explicó la sentencia dinámica o nombre del archivo fuente cuando se explicó el SQL estático.
SOURCE_SCHEMA VARCHAR(128) No PK, FK Esquema, o calificador de la petición fuente de Explain.
SOURCE_VERSION VARCHAR(64) No PK, FK Versión de la petición fuente de Explain.
EXPLAIN_LEVEL CHAR(1) No PK, FK Nivel de información Explain para el cual esta fila es relevante.

Los valores válidos son:

  • O: Texto original (tal como lo ha entrado el usuario)
  • P: PLAN SELECTION
STMTNO INTEGER No PK, FK Número de sentencia dentro del paquete con el que está relacionada esta información de Explain. Se establece en 1 para las sentencias Explain de SQL dinámico. Para las sentencias de SQL estático, este valor es el mismo que el valor que se utiliza para la vista de catálogo SYSCAT.STATEMENTS.
SECTNO INTEGER No PK, FK Número de sección dentro del paquete que contiene esta sentencia de SQL. Para las sentencias Explain de SQL dinámico, este número de sección se utiliza para conservar la sección de esta sentencia en tiempo de ejecución. Para las sentencias de SQL estático, este valor es el mismo que el valor que se utiliza para la vista de catálogo SYSCAT.STATEMENTS.
DIAGNOSTIC_ID INTEGER No PK ID del diagnóstico para una instancia específica de una sentencia en la tabla EXPLAIN_STATEMENT.
CODE INTEGER No No Número exclusivo asignado a cada mensaje de diagnóstico. El número lo puede utilizar una API del mensaje para recuperar el texto completo del mensaje de diagnóstico.

  1. PK significa que la columna forma parte de una clave primaria; FK significa que la columna forma parte de una clave foránea.

EXPLAIN_DIAGNOSTIC_DATA: Una nueva tabla Explain

La tabla EXPLAIN_DIAGNOSTIC_DATA contiene señales de mensajes para mensajes de diagnóstico específicos que se graban en la tabla EXPLAIN_DIAGNOSTIC. Las señales de mensajes proporcionan información adicional que es específica de la ejecución de la sentencia de SQL que ha generado el mensaje.

La función de tabla EXPLAIN_GET_MSGS consulta las tablas EXPLAIN_DIAGNOSTIC y EXPLAIN_DIAGNOSTIC_DATA Explain, y devuelve mensajes formateados.

Tabla 40. Tabla EXPLAIN_DIAGNOSTIC_DATA
Nombre de columna Tipo de datos Anulable Clave 1 Descripción
EXPLAIN_REQUESTER VARCHAR(128) No FK ID de autorización del iniciador de esta petición Explain.
EXPLAIN_TIME TIMESTAMP No FK Hora de iniciación de la petición Explain.
SOURCE_NAME VARCHAR(128) No FK Nombre del paquete en ejecución cuando se explicó la sentencia dinámica o nombre del archivo fuente cuando se explicó el SQL estático.
SOURCE_SCHEMA VARCHAR(128) No FK Esquema, o calificador de la petición fuente de Explain.
SOURCE_VERSION VARCHAR(64) No FK Versión de la petición fuente de Explain.
EXPLAIN_LEVEL CHAR(1) No FK Nivel de información Explain para el cual esta fila es relevante.

Los valores válidos son:

  • O: Texto original (tal como lo ha entrado el usuario)
  • P: PLAN SELECTION
STMTNO INTEGER No FK Número de sentencia dentro del paquete con el que está relacionada esta información de Explain. Se establece en 1 para las sentencias Explain de SQL dinámico. Para las sentencias de SQL estático, este valor es el mismo que el valor que se utiliza para la vista de catálogo SYSCAT.STATEMENTS.
SECTNO INTEGER No FK Número de sección dentro del paquete que contiene esta sentencia de SQL. Para las sentencias Explain de SQL dinámico, este número de sección se utiliza para conservar la sección de esta sentencia en tiempo de ejecución. Para las sentencias de SQL estático, este valor es el mismo que el valor que se utiliza para la vista de catálogo SYSCAT.STATEMENTS.
DIAGNOSTIC_ID INTEGER No PK ID del diagnóstico para una instancia específica de una sentencia en la tabla EXPLAIN_STATEMENT.
ORDINAL INTEGER No No Posición de la señal en el texto de mensaje completo.
TOKEN VARCHAR(1000) No Señal de mensaje que debe insertarse en el texto de mensaje completo; se podría truncar.
TOKEN_LONG BLOB(3M) No Más información detallada, si está disponible.

  1. PK significa que la columna forma parte de una clave primaria; FK significa que la columna forma parte de una clave foránea.

Esquema utilizado por el recurso Explain

El recurso Explain utiliza los siguientes ID como esquema cuando se califican tablas Explain que está llenando:

El esquema se puede asociar con un conjunto de tablas Explain o alias que apuntan a un conjunto de tablas Explain bajo un esquema diferente.

Si no se encuentra ninguna tabla Explain bajo el esquema, el recurso Explain comprueba si hay tablas Explain bajo del esquema SYSTOOLS, e intenta utilizar dichas tablas.

Representación mediante series de los valores de fecha y hora

Series de hora

Una representación de serie de una hora es una serie que empieza por un dígito y que tiene una longitud de 4 caracteres como mínimo. Pueden incluirse blancos de cola; puede omitirse un cero inicial de la parte correspondiente a la hora y pueden omitirse por completo los segundos. Si se omiten los segundos, se supone una especificación implícita de 0 segundos. De este modo, 13:30 es equivalente a 13:30:00.

Los formatos válidos para las series de horas se indican en la tabla siguiente. Cada formato se identifica mediante el nombre y la abreviatura asociada.

Tabla 41. Formatos para representaciones de serie de horas
Nombre del formato Abreviatura Formato de la hora Ejemplo
International Standards Organization ISO hh.mm.ss 13.30.05
Estándar IBM USA USA hh:mm AM o PM 1:30 PM
Estándar IBM European EUR hh.mm.ss 13.30.05
Japanese Industrial Standard Christian Era JIS hh:mm:ss 13:30:05
Definido-sitio LOC Depende del código territorial de la aplicación -

A partir de la Versión 8.2, "AM" y "PM" se pueden representar en minúsculas o en mayúsculas.

[ Principio de página |Página anterior | Página siguiente | Contenido ]