Geofrey,

Agora que vc achou posso voltar a explicação inicial, aquela dos caracteres bagunçados, lembra-se?

Bom, é extremamente recomendado que o Client Oracle de uma máquina esteja configurado com o mesmo mapa de caracteres do servidor a que ele esteja conectando, se estiver diferente pode ocorrer estes problemas de caracteres bagunçados.

Para verificar o Client você já sabe como, no RegEdit, NLS_LANG, Ok? No seu caso foi "BRAZILIAN PORTUGUESE_BRAZIL.WE8MSWIN1252"

Agora vc precisa saber como foi instalado o servidor. Conecte num usuário que tenha grant de DBA (SYSTEM por exemplo) e rode o select abaixo:

SQL> select * from nls_database_parameters where parameter in ('NLS_CHARACTERSET','NLS_LANGUAGE','NLS_TERRITORY');

PARAMETER                      VALUE
------------------------------ ----------------------------------------
NLS_LANGUAGE                   BRAZILIAN
NLS_TERRITORY                  PORTUGUESE_BRAZIL
NLS_CHARACTERSET               WE8MSWIN1252
 
Para estar correto com o seu client, as informações terão que ser as mesmas. Se estiver diferente, procure reconfigurar o client com a mesma configuração do servidor.
Aquele exemplo do AMERICAN_AMERICA é a forma como EU costumo configurar meus bancos Oracle, vc pode usar qualquer outra configuração, mas é recomendado que o client e o server estejam com a mesma.

Sds,
Erasmo


[EMAIL PROTECTED] wrote:
Ok.
Eu reinstalei o cliente 10G e fui no regedit, lá encontrei uma única sequência
NLS_LANG na chave [HKEY_LOCAL_MACHINE\SOFTWARE\ORACLE\KEY_OraClient10g_home2].
Os dados da NLS_LANG:
BRAZILIAN PORTUGUESE_BRAZIL.WE8MSWIN1252

Devo trocá-lo para:
"NLS_LANG"="AMERICAN_AMERICA.WE8ISO8859P1" ?




Citando Erasmo <[EMAIL PROTECTED]>:

  
Geofrey,

Quando se instala o Oracle Client numa máquina ele cria todas as
configurações no registro do Windows, se vc não encontrou um "valor de
sequencia" (eu errei, chaves são pastas no RegEdit) NLS_LANG,
provavelmente a instalação do Oracle Client pode estar corrompida.

Na minha máquina, possuo três versões do Oracle Client instaladas, 8i,
9i e 10g, portanto tenho 3 homes, e os valores a que me referi no
NLS_LANG são estes:

[HKEY_LOCAL_MACHINE\SOFTWARE\ORACLE]
"NLS_LANG"="AMERICAN_AMERICA.WE8ISO8859P1"

[HKEY_LOCAL_MACHINE\SOFTWARE\ORACLE\ALL_HOMES\ID0]
"NLS_LANG"="AMERICAN_AMERICA.WE8ISO8859P1"

[HKEY_LOCAL_MACHINE\SOFTWARE\ORACLE\ALL_HOMES\ID1]
"NLS_LANG"="AMERICAN_AMERICA.WE8ISO8859P1"

[HKEY_LOCAL_MACHINE\SOFTWARE\ORACLE\HOME0]
"NLS_LANG"="AMERICAN_AMERICA.WE8ISO8859P1"

[HKEY_LOCAL_MACHINE\SOFTWARE\ORACLE\HOME1]
"NLS_LANG"="AMERICAN_AMERICA.WE8ISO8859P1"

[HKEY_LOCAL_MACHINE\SOFTWARE\ORACLE\KEY_OraClient10g_home1]
"NLS_LANG"="AMERICAN_AMERICA.WE8ISO8859P1"

[HKEY_LOCAL_MACHINE\SOFTWARE\ORACLE\KEY_OraDb10g_home1]
"NLS_LANG"="AMERICAN_AMERICA.WE8ISO8859P1"

Sds,
Erasmo

[EMAIL PROTECTED] wrote:
    
Erasmo,
não encontrei nenhuma chave NLS_LANG...
eu devo criá-las?

Citando Erasmo <[EMAIL PROTECTED]>:


      
Geofrey,

Eu já tive um problema parecido, onde as informações retornadas pelo
select estavam bagunçadas, mas descobri que era configuração errada na
instalação do Oracle, normalmente recomendo às empresas utilizarem
padrão INGLES com mapa de caracteres WE8ISO8859P1 (Internacional). Na
empresa em questão, o DBA instalou o Oracle com UTL8, uma forma
diferente de armazenamento de dados onde são necessários 2 bytes para
representar cada letra ao invés de 1 byte, mas a aplicação precisa
operar dessa forma também, o que não é normal. Foi necessário reinstalar
o servidor com as configurações corretas.

Outra dica, no REGEDIT da máquina client, Local_Machine\Software\Oracle,
procure todas as chaves NLS_LANG e certifique-se que estão com valores
corretos, no meu caso sempre será "AMERICAN_AMERICA.WE8ISO8859P1"

Espero ter ajudado.

Sds,
Erasmo

--

Erasmo Bispo de Oliveira Junior
Gerente de Pesquisa e Desenvolvimento
Softway - Softcomex Informática Ltda.
Pabx:   +55 (19) 3739.9200
Direto: +55 (19) 3739.9361
Fax:    +55 (19) 3739.9240
e-mail: [EMAIL PROTECTED]
web:    http://www.softcomex.com.br



[EMAIL PROTECTED] wrote:

        
Oi amigos,

tenho dois clientes, um com o oracle 7 e o outro com o oracle 10,
num dado processo eu tenho no meu código um Insert e logo em
seguida um select para ler o dado que acabou de ser inserido inserido.
No oracle 7 funciona, mas no 10 ocorre uma leitura suja, ou seja, o
          
Select
    
não

        
pega o dado que acabou de ser inserido.

Então coloquei um SqlCommit na handle utilizada e também a função
SqlSetParameter( hSql, DBP_AUTOCOMMIT, TRUE, '' )
mas o erro persiste!

Alguma sugestão?

Sds,
George.




==============================================
Lista de Centura SQLWindows
Administrador : [EMAIL PROTECTED]
[ http://www.centuraexplorer.com ]
Para sair desta lista mande mensagem para:
[EMAIL PROTECTED] sem nada no Subject e
com o comando a seguir no corpo da msg:
"unsubscribe sqlwin" (sem as aspas)
==============================================



          
==============================================
Lista de Centura SQLWindows
Administrador : [EMAIL PROTECTED]
[ http://www.centuraexplorer.com ]
Para sair desta lista mande mensagem para:
[EMAIL PROTECTED] sem nada no Subject e
com o comando a seguir no corpo da msg:
"unsubscribe sqlwin" (sem as aspas)
==============================================


        

==============================================
Lista de Centura SQLWindows
Administrador : [EMAIL PROTECTED]
[ http://www.centuraexplorer.com ]
Para sair desta lista mande mensagem para:
[EMAIL PROTECTED] sem nada no Subject e
com o comando a seguir no corpo da msg:
"unsubscribe sqlwin" (sem as aspas)
==============================================


      
--

Erasmo Bispo de Oliveira Junior
Gerente de Pesquisa e Desenvolvimento
Softway - Softcomex Informática Ltda.
Pabx:   +55 (19) 3739.9200
Direto: +55 (19) 3739.9361
Fax:    +55 (19) 3739.9240
e-mail: [EMAIL PROTECTED]
web:    http://www.softcomex.com.br


    



==============================================
Lista de Centura SQLWindows
Administrador : [EMAIL PROTECTED]
[ http://www.centuraexplorer.com ]
Para sair desta lista mande mensagem para:
[EMAIL PROTECTED] sem nada no Subject e
com o comando a seguir no corpo da msg:
"unsubscribe sqlwin" (sem as aspas)
==============================================

  


-- 

Erasmo Bispo de Oliveira Junior
Gerente de Pesquisa e Desenvolvimento
Softway - Softcomex Informática Ltda.
Pabx:   +55 (19) 3739.9200
Direto: +55 (19) 3739.9361
Fax:    +55 (19) 3739.9240
e-mail: [EMAIL PROTECTED]
web:    http://www.softcomex.com.br

Responder a