Puede utilizar el personalizador de perfil SQLJ DB2, db2profc, para conseguir que la aplicación Java funcione de forma más eficiente con la base de datos.
El personalizador de perfil SQLJ DB2 hace lo siguiente:
v Precompila las sentencias SQL almacenadas en un perfil y genera un paquete en la base de datos
DB2.
v Personaliza el perfil SQLJ sustituyendo las sentencias SQL por referencias a la sentencia asociada en
el paquete que se ha creado.
Para precompilar las sentencias SQL de un perfil, escriba lo siguiente en el indicador de mandatos de Qshell:
db2profc MyClass_SJProfile0.ser
DondeMyClass_SJProfile0.seres el nombre del perfil que desea precompilar.
Utilización y sintaxis del personalizador de perfil SQLJ DB2
db2profc[opciones] <nombre perfil SQLJ>
Dondenombre perfil SQLJ es el nombre del perfil que debe imprimirse yopcioneses la lista de opciones que desea.
Las opciones disponibles para db2profp son: -url=<URL de JDBC>
-user=<nombre de usuario> -password=<contraseña>
-package=<nombre de biblioteca/nombre de paquete> -commitctrl=<control de compromiso> -datefmt=<formato de fecha> -datesep=<separador de fecha> -timefmt=<formato de hora> -timesep=<separador de hora> -decimalpt=<separador decimal>
-stmtCCSID=<identificador de juego de caracteres para el texto de la sentencia SQL> -sorttbl=<nombre de biblioteca/nombre de tabla de secuencia de ordenación>
-langID=<identificador de idioma>
A continuación se ofrece una descripción detallada de estas opciones.
-url=<URL de JDBC>
″jdbc:db2:nombreSistema″
Hallará más información en Acceso a base de datos utilizando el controlador JDBC de IBM Developer Kit para Java.
-user=<nombre de usuario>
Dondenombre de usuarioes su nombre de usuario. El valor por omisión es el ID del usuario actual que ha iniciado la sesión en la conexión local.
-password=<contraseña>
Dondecontraseñaes su contraseña. El valor por omisión es la contraseña del usuario actual que ha iniciado la sesión en la conexión local.
-package=<nombre de biblioteca/nombre de paquete>
Dondenombre de biblioteca es el nombre de la biblioteca en la que se colocará el paquete, y
nombre de paquetees el nombre del paquete que hay que generar. El nombre de biblioteca por omisión es QUSRSYS. El nombre de paquete por omisión se generará a partir del nombre del perfil. La longitud máxima del nombre de paquete es de 10 caracteres. Puesto que el nombre del perfil SQLJ tendrá siempre más de 10 caracteres, el nombre de paquete por omisión que se construya será diferente del nombre de perfil. El nombre de paquete por omisión se construirá concatenando las primeras letras del nombre de perfil con el número de clave del perfil. Si el número de clave del perfil consta de más de 10 caracteres, se utilizarán los 10 últimos caracteres del número de clave del perfil para el nombre de paquete por omisión. Por ejemplo, el siguiente diagrama muestra algunos nombres de perfil y sus nombres de paquete por omisión:
Nombre de perfil Nombre de paquete por omisión
App_SJProfile0 App_SJPro0
App_SJProfile01234 App_S01234
App_SJProfile012345678 A012345678
App_SJProfile01234567891 1234567891
-commitctrl=<control de compromiso>
Dondecontrol de compromisoes el nivel de control de compromiso que se desea. El control de compromiso puede tener cualquiera de los siguientes valores de tipo carácter:
Valor Definición
C *CHG. Son posibles las lecturas desechables, las lecturas
no repetibles y las lecturas fantasma.
S *CS. No son posibles las lecturas desechables, pero sí las
no repetibles y las fantasma.
A *ALL. No son posibles las lecturas desechables ni las no
repetibles, pero sí las lecturas fantasma.
N *NONE. No son posibles las lecturas desechables, las no
repetibles ni las fantasma. Este es el valor por omisión.
-datefmt=<formato de fecha>
Dondeformato de fecha es el tipo de formato de fecha que se desea. El formato de fecha puede tener cualquiera de los siguientes valores:
Valor Definición
USA Estándar IBM de Estados Unidos (mm.dd.aaaa,hh:mm
a.m., hh:mm p.m.)
ISO International Standards Organization (aaaa-mm-dd,
hh.mm.ss) Este es el valor por omisión.
EUR Estándar europeo de IBM (dd.mm.aaaa, hh.mm.ss)
JIS Japanese Industrial Standard Christian Era (aaaa-mm-dd,
Valor Definición
MDY Mes/Día/Año (mm/d/aa)
DMY Día/Mes/Año (dd/mm/aa)
YMD Año/Mes/Día (aa/mm/dd)
JUL Juliana (aa/ddd)
El formato de fecha se utiliza al acceder a las columnas de resultados de tipo fecha. Todos los campos de fecha de salida se devuelven en el formato especificado. Para las series de fecha de entrada, se utiliza el valor indicado para determinar si la fecha se ha especificado con un formato válido. El valor por omisión es ISO.
-datesep=<separador de fecha>
Dondeseparador de fecha es el tipo de separador que desea utilizar. El separador de fecha se utiliza al acceder a las columnas de resultados de tipo fecha. El separador de fecha puede ser cualquiera de los siguientes:
Valor Definición
/ Se utiliza una barra inclinada. . Se utiliza un punto.
, Se utiliza una coma.
- Se utiliza un guión. Este es el valor por omisión. blank Se utiliza un espacio.
-timefmt=<formato de hora>
Dondeformato de horaes el formato que desea utilizar para visualizar campos de hora. El formato de hora se utiliza al acceder a las columnas de resultados de tipo hora. Para las series de hora de entrada, se utiliza el valor indicado para determinar si la hora se ha especificado con un formato válido. El formato de hora puede tener cualquiera de los siguientes valores:
Valor Definición
USA Estándar IBM de Estados Unidos (mm.dd.aaaa,hh:mm
a.m., hh:mm p.m.)
ISO International Standards Organization (aaaa-mm-dd,
hh.mm.ss) Este es el valor por omisión.
EUR Estándar europeo de IBM (dd.mm.aaaa, hh.mm.ss)
JIS Japanese Industrial Standard Christian Era (aaaa-mm-dd,
hh:mm:ss)
HMS Hora/Minutos/Segundos (hh:mm:ss)
-timesep=<separador de hora>
Dondeseparador de horaes el carácter que desea utilizar para acceder a las columnas de resultados de tipo hora. El separador de hora puede ser cualquiera de los siguientes:
Valor Definición
: Se utilizan dos puntos.
. Se utiliza un punto. Este es el valor por omisión. , Se utiliza una coma.
blank Se utiliza un espacio.
-decimalpt=<separador decimal>
Dondeseparador decimales es separador decimal que desea utilizar. El separador decimal se utiliza para las constantes numéricas en las sentencias SQL. El separador decimal puede ser cualquiera de los siguientes:
Valor Definición
Valor Definición
, Se utiliza una coma.
-stmtCCSID=<CCSID>
DondeCCSIDes el identificador de juego de caracteres para las sentencias SQL preparadas en el paquete. El valor por omisión es el valor del trabajo durante el tiempo de personalización.
-sorttbl=<nombre de biblioteca/nombre de tabla de secuencia de ordenación>
Donde nombre de biblioteca/nombre de tabla de secuencia de ordenación es la ubicación y el nombre de la tabla de secuencia de ordenación que desea utilizar. La tabla de secuencia de ordenación se utiliza para las comparaciones de series en las sentencias SQL. Los dos nombres, el de la biblioteca y el de la tabla de secuencia de ordenación, no pueden tener más de 10 caracteres. El valor por omisión se toma del trabajo durante el tiempo de personalización.
-langID=<identificador de idioma>
Dondeidentificador de idiomaes el identificador de idioma que desea utilizar. El valor por omisión para el identificador de idioma se toma del trabajo actual durante el tiempo de personalización. El identificador de idioma se utiliza junto con la tabla de secuencia de ordenación.
Si desea información más detallada acerca de alguno de los campos anteriores, vea el manual DB2 for
iSeries 400 SQL Programming Concepts, SC41-5611