Issue With Case Sensitivity em consultas do servidor IBM Power

2

Onde eu trabalho, temos um IBM Power System que usamos para armazenamento e acesso de dados. Atualmente, ele está executando o i OS 6.1. Temos um site em um servidor IIS que extrai dados desse servidor e tem vários aplicativos da Web diferentes que executam funções diferentes. Todos eles possuem algum tipo de função de pesquisa. Há um problema com a diferenciação entre maiúsculas e minúsculas em dois desses sites.

Aqui é onde fica um pouco peludo. Este problema só começou a acontecer quando atualizamos do v5r4 para o v6r1 no sistema IBM. Novamente, porém, isso não acontece em todos os sites (há 8 total, 2 tem o problema). Isso é muito estranho, porque todos eles usam os mesmos procedimentos de IO. O site foi desenvolvido por outra parte, que é capaz de testar remotamente o nosso banco de dados. Eles estão executando o v7r1 e não tiveram problemas ao usar o site com nosso banco de dados. O site acessa os dados via ODBC, e eu tentei reconfigurar o DSN. Uma das pessoas de suporte até me fez registrar sua configuração exata de ODBC com um arquivo .reg, e ainda nada. Tanto eles quanto eu ficamos sem ideias, então, por enquanto, recorremos a um link de ajuda. Por acaso eu estava trabalhando em um site diferente que usa o mesmo servidor para consultas, e a conexão ODBC neste site tinha o mesmo comportamento ... nomes e quaisquer outros campos de pesquisa parecem ser sensíveis a maiúsculas e minúsculas. Eu sei, desde que eu tenho uma surpresa repentina do meu site não funcionar, que meu site não era sensível a maiúsculas antes da atualização v6r1. Também usamos um aplicativo de terceiros para executar consultas SQL e, no mesmo DSN, as consultas neste aplicativo NÃO diferenciam maiúsculas de minúsculas. Então, como você pode ver, não consigo encontrar nenhuma correlação. Alguém sabe de problemas com DSNs da IBM ou de diferenciação de maiúsculas e minúsculas com servidores / sistemas de arquivos IBM que podem causar isso para determinadas consultas?

    
por Big EMPin 07.01.2013 / 17:49

1 resposta

2

Se o suspeito for o driver ODBC, verifique o DSN. Selecione a guia Idioma e escolha o tipo de classificação "Classificar com base no ID do idioma". Em seguida, escolha seu ID de idioma. A configuração padrão é 'Ordenar com base em * valores HEX'.

Se o suspeito for o servidor IBM i, peça ao administrador para verificar a propriedade SRTSEQ dos trabalhos do servidor - QZDASOINIT, provavelmente - para defini-lo como * LANGIDSHR. O padrão é * HEX. Claramente, isso afetará TODO o acesso ODBC ao servidor IBM, não apenas seu acesso. Mas se é assim antes da atualização, talvez seja melhor colocá-lo de volta.

Pode ser mais transparente se as consultas lidarem com o monocasing explicitamente. Então, ao invés de ... ONDE CUSTNAME GOSTA DE 'JONES%' ... seria ... ONDE SUPERIOR (CUSTNAME) GOSTA DE 'JONES%' ...

    
por 09.01.2013 / 20:14