Notas del release


48.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 Suplemento de instalación y configuración 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)". Esto es necesario porque algunas versiones de DB2 soportan la sintaxis "count(exp)" y dicha sintaxis la generan algunas aplicaciones ODBC. Lo necesitan las 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 la columna LITERAL_PREFIX o LITERAL_SUFFIX. Fuerza al controlador a devolver una serie vacía en lugar de ello. Necesario para Impromptu 2.0.

4
Fuerza al controlador a tratar los datos de indicación de fecha y hora de entrada como datos de fecha si la hora y la parte de fracción de la indicación de fecha y hora son cero. Necesario para Microsoft Access.

8
Fuerza al controlador a tratar los datos de indicación de fecha y hora de entrada como datos de hora si la parte de fecha de la indicación de fecha y hora es 1899-12-30. Necesario para Microsoft Access.

16
No se utiliza.

32
Fuerza al controlador a no devolver información acerca de las columnas SQL_LONGVARCHAR, SQL_LONGVARBINARY y SQL_LONGVARGRAPHIC. En la aplicación parece como si no se soportaran 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, nValue FROM MSysConf" vaya al servidor. Actualmente el controlador devuelve un error con el valor de 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 en la llamada SQLStatistics(). Actualmente, el controlador devuelve los índices clasificados por nombre de índice, lo cual 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 las aplicaciones Powerbuild.

32768
Fuerza al controlador a que haga que las aplicaciones de consulta de Microsoft trabajen con sinónimos MVS de DB2.

65536
Fuerza al controlador a insertar manualmente una "G" delante de literales de carácter que son, de hecho, literales gráficos. Este parche debe proporcionarse siempre cuando se trabaja en un entorno de doble byte.

131072
Fuerza al controlador a describir una columna de indicación de fecha y hora como una columna CHAR(26), cuando la columna forma parte de un índice exclusivo. Necesario para aplicaciones Microsoft.

262144
Fuerza al controlador a utilizar la tabla de pseudocatálogo db2cli.procedures en lugar de las tablas SYSCAT.PROCEDURES y SYSCAT.PROCPARMS.

524288
Fuerza al controlador a utilizar SYSTEM_TABLE_SCHEMA en lugar de TABLE_SCHEMA al realizar una consulta de tabla de sistema en un sistema DB2/400 V3.x. Produce un rendimiento mejor.

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 todos los argumentos para llamadas de
     esquema a mayúsculas.
 
 4 - Fuerza al controlador a devolver el conjunto de resultados como en la
     Versión 2.1.2 para llamadas de esquema (es decir, SQLColumns(),
     SQLProcedureColumns(), etc), en lugar de devolver el conjunto de
     resultados como en la Versión 5.
 
 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 un mensaje que indica que los cursores
     desplazables no se soportan. 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 columna
     GRAPHIC con el tipo de datos de columna CHAR. Es necesario en un entorno
     de doble byte.
 
 8 - Fuerza al controlador a ignorar los argumentos de búsqueda de catálogo en
     llamadas de esquema.
 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
      se permiten paréntesis en la cláusula ON de una cláusula de unión externa.
      La activación de PATCH2 hará que el controlador IBM DB2 ODBC elimine
      los paréntesis cuando la cláusula de unión externa esté en una secuencia
      de escape ODBC. Este PATCH2 sólo se deberá utilizar cuando sea para
      DB2 MVS 4.1.
 20 - Actualmente, DB2 en MVS no soporta el predicado BETWEEN con
      marcadores de parámetro como operandos (expresión ? BETWEEN ?).
      La activación de este parche hará 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 salida (OUTPUT) para
      procedimientos almacenados en SQL_NULL_DATA
 22 - 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 al utilizar la sentencia de unión externa donde col1 tiene
      una longitud superior a 254 caracteres y hace que DB2 UDB devuelva
      un error (dado que DB2 UDB no soporta columnas de más de 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 alternativa de acceso para columnas decimales - elimina ceros
      de cola en la representación char
 26 - No devolver sqlcode 464 a la aplicación - indica que los conjuntos de
      resultados se devuelven
 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 ]