Notas del release


45.2 Valores de PATCH1 y PATCH2 para configuración de CLI/ODBC/JDBC

El controlador CLI/ODBC/JDBC se puede configurar mediante el Asistente de configuración del cliente o el ODBC Driver Manager (si está instalado en el sistema) o editando manualmente el archivo db2cli.ini. Para obtener más detalles, consulte el manual DB2 Client Installation Guide o el manual CLI Guide and Reference.

El comportamiento por omisión del controlador DB2 CLI/ODBC puede modificarse especificando valores para las palabras clave PATCH1 y PATCH2 mediante el archivo db2cli.ini o mediante las API CLI SQLDriverConnect() o SQLBrowseConnect().

La palabra clave PATCH1 se especifica añadiendo todas las palabras clave que el usuario desea establecer. Por ejemplo, si se especificasen los parches 1, 2 y 8, PATCH1 tendría el valor 11. A continuación encontrará una descripción de cada valor de la palabra clave y su efecto en el controlador:

  1 - Hace que el controlador busque "count(exp)" y lo sustituya por
     "count(distinct exp)". Es necesario porque algunas versiones de DB2
     soportan la sintaxis "count(exp)" y esta sintaxis la generan algunas
     aplicaciones ODBC. Es necesario para aplicaciones Microsoft cuando el
     servidor no soporta la sintaxis "count(exp)".
 
 2 - Algunas aplicaciones ODBC se interrumpen cuando se devuelve
     SQL_NULL_DATA en la función SQLGetTypeInfo() para las columnas
     LITERAL_PREFIX o LITERAL_SUFFIX. Esto fuerza al controlador a
     devolver una serie vacía en su lugar. Es necesario para Impromptu 2.0.
 
 4 - Fuerza al controlador a tratar los datos de indicación de la hora
     de entrada como datos de fecha si la parte de la hora y la fracción
     de la indicación de la hora son cero. Necesario para Microsoft Access.
 
 8 - Fuerza al controlador a tratar los datos de indicación de la hora
     de entrada como datos de hora si la parte de fecha de la indicación
     de la hora es 1899-12-30. Necesario para Microsoft Access.
 
 16 - No utilizado.
 
 32 - Fuerza al controlador a no devolver información acerca de las columnas
      SQL_LONGVARBINARY y SQL_LONGVARGRAPHIC. Para la aplicación,
      parece como si no estuviesen soportados los campos largos. Necesario
      para Lotus 123.
 
 64 - Fuerza al controlador a terminar en NULL las series de salida gráficas.
      Necesario para Microsoft Access en un entorno de doble byte.
 
 128 - Fuerza al controlador a dejar que la consulta "SELECT Config, nValor
       FROM MSysConf" vaya al servidor. Actualmente el controlador devuelve
       un error con el valor SQLSTATE asociado de S0002 (tabla no encontrada).
       Es necesario si el usuario ha creado esta tabla de configuración en
       la base de datos y desea que la aplicación acceda a ella.
 
 256 - Fuerza al controlador a devolver primero las columnas de clave
       primaria primero en la llamada SQLStatistics(). Actualmente, el
       controlador devuelve los índices clasificados por nombre de índice,
       que es el comportamiento estándar de ODBC.
 
 512 - Fuerza al controlador a devolver FALSE en SQLGetFunctions() para
       SQL_API_SQLTABLEPRIVILEGES y SQL_API_SQLCOLUMNPRIVILEGES.
 
 1024 - Fuerza al controlador a devolver SQL_SUCCESS en lugar de
        SQL_NO_DATA_FOUND en SQLExecute() o SQLExecDirect() si la
        sentencia UPDATE o DELETE ejecutada no afecta a ninguna fila.
        Necesario para aplicaciones Visual Basic.
 
 2048 - No se utiliza.
 
 4096 - Fuerza al controlador a no emitir COMMIT después de cerrar un cursor
        cuando se está en modalidad de confirmación automática.
 
 8192 - Fuerza al controlador a devolver un conjunto de resultados adicional
        después de invocar un procedimiento almacenado. Este conjunto de
        resultados es un conjunto de resultados de una fila que consta de
        los valores de salida del procedimiento almacenado. Pueden acceder
        a él aplicaciones Powerbuild.
 
 32768 - Fuerza al controlador a realizar trabajos de aplicaciones de consulta
         Microsoft con sinónimos DB2 MVS.
 
 65536 - Fuerza al controlador a insertar manualmente una "G" delante de los
         literales de caracteres que son de hecho literales gráficos.
         Este parche debe suministrarse siempre cuando se trabaja en un
         entorno de doble byte.
 
 131072 - Fuerza al controlador a describir una columna de indicación de la
          hora como una columna CHAR(26) cuando forma parte de un
          índice exclusivo. Necesario para aplicaciones Microsoft.
 
 262144 - Fuerza al controlador a usar la tabla del seudocatálogo
          db2cli.procedures en lugar de las tablas SYSCAT.PROCEDURES y
          SYSCAT.PROCPARMS.
 
 524288 - Fuerza al controlador a usar SYSTEM_TABLE_SCHEMA en lugar de
          TABLE_SCHEMA cuando se efectúa una consulta de tabla del sistema a un
          sistema DB2/400 V3.x. Esto da como resultado un mejor rendimiento.
 
 1048576 - Fuerza al controlador a tratar una serie de longitud cero
           mediante SQLPutData() como SQL_NULL_DATA.

La palabra clave PATCH2 difiere de la palabra clave PATCH1. En este caso, se especifican múltiples parches utilizando comas como separadores. Por ejemplo, si se han especificado los parches 1, 4 y 5, PATCH2 tendría un valor de "1,4,5". A continuación encontrará una descripción de cada valor de la palabra clave y su efecto en el controlador:

 1 - Fuerza al controlador a convertir a mayúsculas el nombre del
     procedimiento almacenado de una sentencia CALL.
 
 2 - No se utiliza.
 
 3 - Fuerza al controlador a convertir a mayúsculas todos los argumentos
     para llamadas de esquema.
 
 4 - Fuerza al controlador a devolver el conjunto de resultados como en
     la Versión 2.1.2 para llamadas a esquemas (es decir, SQLColumns(),
     SQLProcedureColumns(), etcétera) en lugar de devolver el conjunto
     de resultados como en la Versión 5 como
     conjunto de resultados.
 
 5 - Fuerza al controlador a no optimizar el proceso de columnas VARCHAR
     de entrada, en las que el puntero para los datos y el puntero para la
     longitud son consecutivos en la memoria.
 
 6 - Fuerza al controlador a devolver el mensaje que indica que los cursores
     desplazables no están soportados. Es necesario para programas Visual
     Basic si el cliente DB2 es de la Versión 5 y el servidor es DB2 UDB
     Versión 5.
 
 7 - Fuerza al controlador a correlacionar todos los tipos de datos de columnas
     GRAPHIC con los tipo de datos de columnas CHAR. Es necesario en un entorno
     de doble byte.
 
 8 - Fuerza al controlador a ignorar los argumentos de búsqueda
     del catálogo en llamadas a esquemas.
 9 - No confirma en el Cierre rápido de un cursor
 10 - No se utiliza
 11 - Informa de que el nombre del catálogo está soportado, (procedimientos
      almacenados VB)
 12 - Elimina las comillas de los argumentos de llamadas a esquemas,
      (Visual Interdev)
 13 - No añade palabras clave de db2cli.ini a la serie de conexión de salida
 14 - Ignora el nombre de esquema en SQLProcedures() y SQLProcedureColumns()
 15 - Utiliza siempre el punto como separador decimal en salida de caracteres
 16 - Fuerza la devolución de información de descripción para cada apertura
 17 - No devuelve nombres de columnas en la descripción
 18 - Intenta sustituir los literales por marcadores de parámetros
 19 - Actualmente, DB2 MVS V4.1 no soporta la sintaxis ODBC en la que están
      permitidos los paréntesis en la cláusula ON de una cláusula de unión
      exterior.
      La activación de esta PATCH2 hará que el controlador IBM DB2 ODBC
      desmiembre los paréntesis cuando la cláusula de unión exterior esté
      en una secuencia de escape ODBC. Esta PATCH2 sólo debe utilizarse
      en DB2 MVS 4.1.
 20 - Actualmente, DB2 en MVS no soporta el predicado BETWEEN con marcadores
      de parámetros como operandos (expresión ? BETWEEN ?). La activación de
      este parche provocará que el Controlador IBM ODBC vuelva a escribir el
      predicado como (expresión >= ? y expresión <= ?).
 21 - Establece todos los parámetros de sólo OUTPUT para procedimientos
      almacenados en SQL_NULL_DATA
 22 - Esta PATCH2 hace que el controlador IBM ODBC informe de la unión OUTER
      como no soportada. Es para la aplicación que genera SELECT DISTINCT col1
      u ORDER BY col1 cuando utiliza una sentencia de unión externa donde col1
      tiene una longitud superior a 254 caracteres y hace que DB2 UDB devuelva
      un error (ya que DB2 UDB no soporta columnas superiores a 254 bytes en
      este uso
 23 - No optimiza la entrada para parámetros vinculados con cbColDef=0
 24 - Solución de Access para correlacionar valores de Tiempo como Caracteres
 25 - Solución de Access para columnas decimales - elimina los ceros de cola
      en la representación de char
 26 - No devuelve sqlcode 464 a la aplicación - indica que se devuelven
      conjuntos de resultados
 27 - Fuerza SQLTables para que utilice el valor de palabra clave TABLETYPE,
      incluso si la aplicación especifica un valor válido
 28 - Describe columnas reales como columnas dobles
 29 - Solución ADO para columnas decimales - elimina los ceros iniciales para
      los valores x, donde 1 > x > -1 (Sólo es necesario para algunas
      versiones de MDAC)
 30 - Inhabilita la optimización de puesta en antememoria de procedimiento
      almacenado
 31 - Informa de estadísticas para alias en la llamada a SQLStatistics
 32 - Altera temporalmente el proceso 4 del código de razón sqlcode -727
 33 - Devuelve la versión ISO de la indicación de la hora cuando se
      convierte a char (al contrario de la versión ODBC)
 34 - Informa de las columnas CHAR FOR BIT DATA como CHAR
 35 - Informa de un TABLENAME no válido cuando se solicita
      SQL_DESC_BASE_TABLE_NAME - optimización
      de sólo lectura ADO
 36 - Reservado
 37 - Reservado


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