Notas sobre o Release


45.2 Configuração do PATCH1 CLI/ODBC/JDBC e Definições do PATCH2

O driver CLI/ODBC/JDBC pode ser configurado através do Assistente de Configuração de Cliente ou do Gerenciador de Driver ODBC (se estiver instalado no sistema), ou manualmente editando o arquivo db2cli.ini. Para mais detalhes, consulte a publicação DB2 Client Installation Guide ou o CLI Guide and Reference.

O comportamento padrão do driver DB2 CLI/ODBC pode ser modificado por meio da especificação de valores para ambas as palavras-chave, PATCH1 e PATCH2, através do arquivo db2cli.ini ou através da API CLI SQLDriverConnect() ou SQLBrowseConnect().

A palavra-chave PATCH1 é especificada por meio da inclusão de todas as palavras-chave que o usuário quer definir juntas. Por exemplo, se forem especificados patch 1, 2 e 8, o PATCH1 teria o valor 11. Esta é uma descrição do valor de cada palavra-chave e seu efeito no driver:

  1 - Faz o driver pesquisar "count(exp)" e substitui-lo por
     "count(distinct exp)". É necessário porque algumas versões do DB2
     suportam a sintaxe "count(exp)" e essa sintaxe é gerada por alguns
     aplicativos ODBC. Solicitada por aplicativos Microsoft quando o servidor
     não suportar a sintaxe "count(exp)".
 
 2 - Alguns aplicativos ODBC são interrompidos quando o SQL_NULL_DATA for
     apresentado na função SQLGetTypeInfo() da coluna LITERAL_PREFIX
     ou LITERAL_SUFFIX.
     Isso obriga o driver a apresentar uma cadeia vazia no lugar. Solicitado
     por Impromptu 2.0.
 
 4 - Obriga o driver a tratar os dados do registro de tempo de entrada como
     dados de data caso o tempo e a parte de fração do registro de tempo
     forem zero. Solicitado pelo Microsoft Access.
 
 8 - Obriga o driver a tratar os dados do registro de tempo de entrada como
     dados de hora se a parte da data do registro de tempo for 1899-12-30.
     Solicitado pelo Microsoft Access.
 
 16 - Não utilizado.
 
 32 - Obriga o driver a não apresentar informações sobre as colunas
      SQL_LONGVARCHAR, SQL_LONGVARBINARY e SQL_LONGVARGRAPHIC.
      Para o aplicativos ele aparece como se campos longos não
      fossem suportados. Solicitado pelo Lotus 123.
 
 64 - Obriga o driver a terminar como NULL cadeias de saída gráfica.
      Solicitado pelo Microsoft Access em um ambiente de duplo bytes.
 
 128 - Obriga o driver a deixar a consulta "SELECT Config, nValue FROM
       MSysConf" ir para o servidor. Atualmente o driver apresenta um
       erro com o valor SQLSTATE associado S0002 (tabela não
       encontrada). Solicitado se o usuário tiver criado essa tabela
       de configuração no banco de dados e quiser que o aplicativo
       a acesse.
 
 256 - Obriga o driver a apresentar primeiro as colunas da chave primária
       na chamada SQLStatistics(). Atualmente, o driver apresenta os índices
       ordenados pelo nome, que é o comportamento padrão do ODBC.
 
 512 - Obriga o driver a apresentar FALSE em SQLGetFunctions() tanto para
       SQL_API_SQLTABLEPRIVILEGES quanto para SQL_API_SQLCOLUMNPRIVILEGES.
 
 1024 - Obriga o driver a apresentar SQL_SUCCESS em lugar de SQL_NO_DATA_FOUND
        em SQLExecute() ou SQLExecDirect() se a instrução UPDATE ou DELETE
        executada não afetar nenhuma linha. Solicitado por aplicativos Visual
        Basic.
 
 2048 - Não utilizado.
 
 4096 - Obriga o driver a não emitir um COMMIT depois de fechar um cursor
        quando estiver no modo autocommit.
 
 8192 - Obriga o driver a apresentar um conjunto de resultados extra depois de
        chamar um procedimento armazenado. Esse conjunto de resultado é uma
        linha que consiste nos valores de saída do procedimento armazenado.
        Pode ser acessado por aplicativos Powerbuild.
 
 32768 - Obriga o driver a fazer os aplicativos Microsoft Query trabalharem
         com sinônimos do DB2 MVS.
 
 65536 - Obriga o driver a inserir manualmente um "G" em frente aos literais
         dos caracteres que são na verdade gráficos literais. Essa correção deve
         sempre ser fornecida durante o trabalho em um ambiente de duplo byte.
 
 131072 - Obriga o driver a descrever uma coluna de registro de tempo como uma
          coluna CHAR(26), quando ela fizer parte de um índice exclusivo.
          Solicitado por aplicativos Microsoft.
 
 262144 - Obriga o driver a usar a tabela de catálogo de apelidos
          db2cli.procedures em lugar das tabelas SYSCAT.PROCEDURES e
          SYSCAT.PROCPARMS.
 
 524288 - Obriga o driver a usar SYSTEM_TABLE_SCHEMA em lugar de TABLE_SCHEMA
          quando fizer a consulta de uma tabela do sistema em um sistema
          DB2/400 V3.x.
          Isso resulta em um melhor desempenho.
 
 1048576 - Obriga o driver a tratar uma cadeia de comprimento zero através
           de SQLPutData() como SQL_NULL_DATA.

A palavra-chave PATCH2 difere da palavra-chave PATCH1. Nesse caso, várias correções são especificadas com a utilização de vírgulas como separadores. Por exemplo, se forem especificadas as correções 1, 4 e 5, o PATCH2 teria o valor "1,4,5". Esta é uma descrição do valor de cada palavra-chave e seu efeito no driver:

 1 - Obriga o driver a converter o nome do procedimento armazenado
     de uma instrução CALL em maiúsculas.
 
 2 - Não utilizado.
 
 3 - Obriga o driver a converter todos os argumentos das chamadas de esquema em
     maiúsculas.
 
 4 - Obriga o driver a apresentar a Versão 2.1.2 como conjunto de resultados das
     chamadas do esquema (ou seja, SQLColumns(), SQLProcedureColumns() e assim por
     diante), em lugar da Versão 5 como um conjunto de resultados.
 
 5 - Obriga o driver a não otimizar o processamento das colunas VARCHAR
     de entrada, em que o indicador dos dados e o indicador do comprimento
     são consecutivos na memória.
 
 6 - Obriga o driver a apresentar a mensagem de que os cursores deslocáveis não
     são suportados. É solicitado pelos programas do Visual Basic se o cliente DB2
     for a Versão 5 e o servidor for o DB2 UDB Versão 5.
 
 7 - Obriga o driver a mapear todos os tipos de dados da coluna GRAPHIC para o
     tipo de dados da coluna CHAR. Solicitado em um ambiente de duplo byte.
 
 8 - Obriga o driver a ignorar argumentos de pesquisa do catálogo em chamadas do esquema.
 9 - Não efetua o commit em Early Close de um cursor
 10 - Não Utilizado
 11 - Relata que o nome do catálogo é suportado, (procedimentos armazenados VB)
 12 - Remove as aspas duplas dos argumentos da chamada do esquema, (Visual Interdev)
 13 - Não anexa as palavras-chave do db2cli.ini na cadeia de conexão de saída
 14 - Ignora o nome do esquema em SQLProcedures() e SQLProcedureColumns()
 15 - Usa sempre um ponto como separador decimal na saída do caractere
 16 - Obriga a apresentação das informações de descrição de cada abertura
 17 - Não apresenta os nomes de colunas na descrição
 18 - Tenta substituir literais por marcadores de parâmetros
 19 - Atualmente, o DB2 MVS V4.1 não suporta a sintaxe ODBC em que os parênteses
      são permitidos na cláusula ON em uma cláusula de join externa.
      Ao ligar este PATCH2 causará ao driver do IBM DB2 ODBC a retirada dos parênteses
      quando a cláusula join externa está em uma seqüência de saída ODBC. Este PATCH2
      só deve ser utilizado em relação ao DB2 MVS 4.1. 
 20 - Atualmente, o DB2 em MVS não suporta o predicado BETWEEN com marcadores de
      parâmetros como ambos operandos (expressão ? BETWEEN ?). Ao ligar esta correção
      fará o Driver IBM ODBC gravar novamente o predicado como
      (expression >= ? and expression <= ?).
 21 - Defina todos os parâmetros somente OUTPUT dos procedimentos armazenados
      como SQL_NULL_DATA
 22 - Este PATCH2 causa ao driver IBM ODBC reportar join OUTER como não suportado.
      Destinado ao aplicativo que gera SELECT DISTINCT col1 ou ORDER BY col1
      ao utilizar a instrução de join externa em que col1 é maior do que 254
      caracteres e faz o DB2 UDB apresentar um erro (já que o DB2 UDB não
      suporta uma coluna maior do que 254 bytes nessa utilização
 23 - Não otimize a entrada dos parâmetros bound com cbColDef=0 
 24 - Solução de acesso para o mapeamento de valores de Tempo como Caracteres
 25 - Solução de acesso para colunas decimais - remove zeros iniciais em
      representações de carac
 26 - Não retorna o sqlcode 464 para o aplicativo - indica o retorno de conjunto de
      resultados
 27 - Força o SQLTables a utilizar o valor palavra-chave TABLETYPE, mesmo que o
      aplicativo especifica um valor válido
 28 - Descreve colunas reais como colunas duplas
 29 - ADO soluções para colunas decimais - remove zeros iniciais
      para valores x, em que 1 > x > -1 (Apenas necessário para algumas
      versões MDAC)
 30 - Desativa a otimização de cache do Procedimento Armazenado
 31 - Relata estatísticas para aliases na chamada SQLStatistics
 32 - Sobrepõe o processamento do sqlcode -727 código de motivo 4
 33 - Retorna a versão ISO do registro de tempo quando convertido para
      caractere (como oposto à versão ODBC)
 34 - Relata colunas CHAR FOR BIT DATA como CHAR
 35 - Relata um TABLENAME inválido quando o SQL_DESC_BASE_TABLE_NAME
      é requisitado - otimização apenas-leitura ADO
 36 - Reservado
 37 - Reservado


[ Início da Página | Página Anterior | Próxima Página | Índice | Índice Remissivo ]