(C) Copyright International Business Machines Corporation 2000, 2006. Reservados todos los derechos. US Government Users Restricted Rights - Use, duplication or disclosure restricted by GSA ADP Schedule Contract with IBM(R) Corp.
Hay dos tipos de proyectos de datos nuevos en el entorno de trabajo:
- Proyectos de diseño de datos
- Proyectos de desarrollo de datos
Los proyectos de diseño de datos se utilizan para crear y almacenar modelos de datos, por ejemplo modelos de datos físicos y modelos de datos lógicos. Los proyectos de desarrollo de datos se utilizan para crear y almacenar objetos de desarrollo de aplicaciones, como por ejemplo procedimientos almacenados y funciones definidas por el usuario (conocidas también como rutinas.) Las rutinas también pueden verse desde un proyecto de diseño de datos como parte de un modelo de datos físico. Sin embargo, el soporte de desarrollo para las rutinas de un proyecto de diseño de datos es muy limitado y no hay ningún soporte de herramientas de SQL para rutinas en un proyecto de diseño de datos. Si está desarrollando rutinas, es recomendable que utilice el proyecto de desarrollo de datos designado que proporciona un soporte más completo que incluye asistentes, editores de rutinas, soporte de depuración y la integración de las herramientas de SQL.
Editor de datos de tabla:
. Si define una tabla con una sola columna de tipo de datos XML o cualquier tabla con filas no exclusivas y después utiliza el editor de tablas para suprimir una fila, se suprimen todas las filas que coincidan con la fila seleccionada. Para solucionar este problema, no utilice el editor de datos de tabla para suprimir una fila en una tabla con filas duplicadas.. En el editor de datos de tablas, si realiza una validación XML sobre una tabla XML que no tiene una clave primaria, la validación XML solo funcionará la primera vez cuando inserte el valor XML. Además, la actualización de una columna XML existente con la validación XML no podrá llevarse a cabo. Para solucionar este problema, cree una clave primaria para las tablas que contienen columnas XML.
Editor de correlaciones XSD anotado
. Cuando se trabaja con varios elementos raíz en este editor pueden producirse errores al guardar el archivo XSD anotado. Para solucionar este problema, cree un conjunto aparte de archivos de documento de Esquema XML para cada elemento raíz.
XML:
. Para utilizar los tipos de datos XML y trabajar con esquemas XML, debe conectar con una base de datos UTF-8.. La cantidad de datos devuelta de la base de datos para los documentos XML es ilimitada. Dependiendo de la cantidad de datos que devuelva, el rendimiento puede verse afectado.
Herramientas SQL:
. El editor de SQL no soporta actualmente las variables de lenguaje principal durante la acción Ejecutar SQL. Para solucionar este problema, puede ejecutar el SQL desde el constructor SQL, si es que se trata de una sentencia DML.. En el constructor SQL, la sintaxis SQL no está soportada. Por ejemplo, los Tipos definidos por usuario (UDT) y las Funciones de tabla no están soportadas.
Desarrollo de rutinas:
. Los tipos definidos por usuario (UDT) no están soportados como parámetros para rutinas.. Para desplegar los procedimientos almacenados Java(TM) destinados a DB2(R) UDB para iSeries(TM) del sistema de archivos utilizando el despliegue Ant, debe asegurarse de tener jt400.jar en la vía de acceso de clases del sistema.
. Si intenta desplegar un procedimiento almacenado exportado utilizando las instrucciones en DeployInstructions.txt, puede obtener un mensaje de error que diga:
...[createsp] No se ha podido conectar a la base de datos destino.
[createsp] com.ibm.db2.jcc.DB2Driver...
Para solucionar este problema, asegúrese de que db2jcc.jar y los archivos de licencia adecuados estén en la vía de acceso de clases del sistema..Puede ver un error del tipo "no se puede cargar la clase" cuando despliegue o ejecute procedimientos almacenados Java. Esto puede ocurrir si hay una discrepancia en la versión de JDK entre RAD v7 y el servidor DB2, si el servidor DB2 tiene un JDK de nivel inferior.
Para evitar este error, debe especificar la opción "-source 1.4" en el campo Opciones de compilación del asistente Desplegar rutinas cuando esté desplegando procedimientos almacenados Java contra servidores que utilicen un nivel de JDK 1.4. (por ejemplo, un servidor DB2 Universal Database(TM) para Linux(R), UNIX(R) y Windows(R) V8.2.) En general, utilice la opción de compilación adecuada "-source nivel de JDK" para que coincida con el nivel de JDK del servidor de base de datos.. Cuando despliegue un procedimiento almacenado o un UDF utilizando la funcionalidad del despliegue Ant, podrá ver este mensaje si no tiene el archivo tools.jar ubicado en la vía de acceso de clases:
No se ha podido localizar tools.jar. Se esperaba encontrarlo en F:\jre\1.4.2\lib\tools.jar
tools.jar es un componente de JRE (Entorno de tiempo de ejecución Java), no de la herramienta de despliegue Ant.
tools.jar no es necesario para ejecutar el script Ant y por ahora puede pasar por alto este mensaje.. Cuando cambia el nombre del método Java en el editor de procedimientos almacenados, no puede guardar el procedimiento adecuadamente pulsando con el botón derecho en la página Fuente del editor y después seleccionando Guardar. Para solucionar este problema, guarde el procedimiento almacenado pulsando Archivo->Guardar, pulsando Control+S o pulsando el icono Guardar.
. Si arrastra y suelta un procedimiento almacenado o una UDF entre servidores diferentes (por ejemplo, de un servidor DB2 UDB para Linux, UNIX y Windows a un servidor DB2 UDB para z/OS(R)), verá un aviso durante la operación de arrastrar y soltar acerca de ciertas incompatibilidades entre ambos servidores. Si continúa con la operación y después intenta abrir el procedimiento almacenado o la UDF, es probable que vea un error.
Perfilado de procedimientos SQL:
. La ejecución del perfilado de SQL en un servidor DB2 UDB para Linux, UNIX y Windows V8.2 puede causar una excepción de puntero nulo si al servidor le falta el procedimiento almacenado prerrequisito (SYSIBM.SQLCAMESSAGECCSID) que es necesario para que el controlador JCC recupere el texto del mensaje de error. Para solucionar este problema, puede crear una conexión al servidor sin el valor retrieveMessagesFromServerOnGetMessage=true.. Durante la supervisión de la ejecución de procedimientos almacenados de SQL, se generan eventos para las sentencias DML como por ejemplo INSERT, SELECT, DELETE y UPDATE que se emiten en el procedimiento. Sin embargo, los eventos no se generan de forma determinística para sentencias de procedimiento como asignaciones de variable y estructuras de control como por ejemplo WHILE o IF.
Depurador de procedimientos almacenados:
. Cuando está conectado a un servidor UNIX DB2, pueden producirse excepciones de tiempo de espera al añadir puntos de interrupción o ejecutar en modalidad de depuración.. El depurador no se ejecuta para un procedimiento almacenado cuyo nombre contenga tanto caracteres ingleses como chinos.
. Las expresiones de observación solo están soportadas para procedimientos almacenados de Java dinámico. No están soportadas para procedimientos almacenados de SQL y SQLJ.
. El depurador no se detiene un punto de interrupción si no está posicionado en el primer símbolo de una sentencia ejecutable, como por ejemplo SET. Además, no se detiene en DECLARE CONTINUE, CLOSE CURSOR ni ROLLBACK.
. Si está depurando un procedimiento almacenado Java y selecciona una acción Terminar, la sesión de depuración puede tardar varios minutos en terminar completamente. Las sesiones de depuración nuevas que se inicien durante este tiempo se comportarán de forma errática.
. Si está depurando un procedimiento almacenado Java que llama a un segundo procedimiento almacenado Java, no podrá depurar el segundo procedimiento almacenado. No se puede recorrer todo el procedimiento almacenado anidado ni se omitirán los puntos de interrupción establecidos en el procedimiento almacenado anidado. Esta restricción es para DB2 UDB para Linux, UNIX y Windows.
. Si obtiene un error 'Se ha sobrepasado el tiempo de espera del paquete' mientras está depurando un procedimiento almacenado Java, intente aumentar el valor de tiempo de espera de Java. Para aumentar el valor del tiempo de espera de Java, pulse Ventana > Preferencias en la barra de menús del entorno de trabajo. Expanda el nodo Java y pulse Depurar. En la página de preferencias de depuración, aumente el valor de Tiempo de espera del depurador (ms) en la sección Tiempo de espera de comunicación. Es recomendable doblar el valor predeterminado como mínimo.
. Cuando está depurando un procedimiento almacenado Java, si utiliza la acción Cambiar valor para modificar una variable que tenga un valor de serie vacío, el botón Aceptar del diálogo de edición no quedará habilitado. Para habilitar el botón, marque el botón de selección Entrar una evaluación, establezca el valor en una serie no vacía (por ejemplo, 'a') y marque el botón de selección Entrar texto literal. El botón Aceptar quedará entonces disponible.
. Si no ve variables locales al depurar un procedimiento almacenado Java, es posible que el procedimiento almacenado se haya desplegado sin la opción del compilador -g. Asegúrese de especificar la opción del compilador -g cuando despliegue procedimientos almacenados Java.
. Si ve un mensaje 'marco de pila no válido' en la vista Variables, vaya a la vista Depurar, pulse el objeto de hebra situado sobre el marco de la pila y después pulse el marco de la pila. De este modo se renueva la vista Variables y el error ya no aparece.
. Cuando esté depurando un procedimiento almacenado SQLJ que esté ejecutándose en DB2 UDB para iSeries V5 R4, la línea actual que se está ejecutando no corresponderá con la línea del código fuente SQLJ visualizada en la vista Depurar a menos que haya aplicado un PTF de iSeries que actualiza la correlación de líneas para que se ajuste al código fuente SQLJ en lugar de al código fuente Java.
. Las preferencias del Depurador para el tiempo de espera del gestor de sesiones no se reconocen. Estas preferencias se establecen de la forma siguiente: Pulse Ventana > Preferencias, expanda el nodo Ejecutar/Depurar y pulse Procedimiento almacenado de DB2. Modifique el campo Tiempo de espera del gestor de sesiones en minutos.
. El depurador no puede procesar un procedimiento almacenado que tenga un gran número de variables en DB2 para Linux, UNIX y Windows. El número máximo de variables es 200.
. Movimiento del cursos en una sesión de depuración: en algunos casos, cuando hay más de una declaración de variable en un procedimiento, debe pulsar Recorrer todo o Recorrer principal más de una vez para pasar a la línea siguiente. Por ejemplo, debe pulsar dos veces sobre esta línea: DECLARE v_dept, v_actdept CHAR(3) y tres veces sobre esta línea DECLARE v_bonus, v_deptbonus, v_newbonus DECIMAL(9,2). Debe pulsar tantas veces como declaraciones de variables haya.
. Si inicia una sesión de depuración para un procedimiento almacenado Java y añade puntos de interrupción e inhabilita los puntos de interrupción, los puntos de interrupción están todavía habilitados. Para solucionar este problema, al iniciar una sesión de depuración nueva, primero debe eliminar todos los puntos de interrupción antiguos y después añadir puntos de interrupción nuevos.
. En algunos casos, cuando esté trabajando con varios proyectos de desarrollo de datos, verá un error al intentar depurar un procedimiento almacenado que diga "No se ha podido localizar el procedimiento almacenado PROCNAME. Es posible que el procedimiento se haya suprimido del espacio de trabajo" o "No se ha encontrado el fuente".
. Si está depurando un procedimiento almacenado SQL justo después de terminar una sesión de depuración o un procedimiento almacenado Java, el depurador mostrará "La función definida por el usuario ... ha sido interrumpida por el usuario." Para solucionar este problema, intente volver a depurar el procedimiento almacenado SQL.
Funcionalidad de núcleo de datos:
. ALIAS, MQT, NICKNAME y SYNONYM están ahora soportados durante la ingeniería de ida y vuelta, pero no lo están en el proceso de correlación de EJB.
. Soporte limitado para MySQL 4.1: las propiedades siguientes no se visualizan correctamente en la vista Propiedades: índice exclusivo, incremento automático de columnas, valor predeterminado de columna para NULL y binario. Además, las funciones y los procedimientos C no están soportados.. Los desencadenantes, las restricciones de comprobación y las vistas no están soportados para Cloudscape(TM) v5.1 : los desencadenantes de Cloudscape v5.1 y las restricciones de comprobación no se visualizan en el Explorador de base de datos. Las vistas de Cloudscape v5.1 no están en el cuerpo de SQL en la vista Propiedades. No puede generar las DDL ni revertir la ingeniería con desencadenantes Cloudscape v5.1, restricciones de comprobación ni vistas.